Ice 3.7 C++11 API Reference
Loading...
Searching...
No Matches
ObjectFactory.h
Go to the documentation of this file.
1//
2// Copyright (c) ZeroC, Inc. All rights reserved.
3//
4//
5// Ice version 3.7.11
6//
7// <auto-generated>
8//
9// Generated from file `ObjectFactory.ice'
10//
11// Warning: do not edit this file.
12//
13// </auto-generated>
14//
15
16#ifndef __Ice_ObjectFactory_h__
17#define __Ice_ObjectFactory_h__
18
20#include <Ice/ProxyF.h>
21#include <Ice/ObjectF.h>
22#include <Ice/ValueF.h>
23#include <Ice/Exception.h>
24#include <Ice/LocalObject.h>
25#include <Ice/StreamHelpers.h>
26#include <Ice/Comparable.h>
27#include <IceUtil/ScopedArray.h>
28#include <Ice/Optional.h>
30
31#ifndef ICE_IGNORE_VERSION
32# if ICE_INT_VERSION / 100 != 307
33# error Ice version mismatch!
34# endif
35# if ICE_INT_VERSION % 100 >= 50
36# error Beta header file detected
37# endif
38# if ICE_INT_VERSION % 100 < 11
39# error Ice patch level mismatch!
40# endif
41#endif
42
43#ifndef ICE_API
44# if defined(ICE_STATIC_LIBS)
45# define ICE_API /**/
46# elif defined(ICE_API_EXPORTS)
47# define ICE_API ICE_DECLSPEC_EXPORT
48# else
49# define ICE_API ICE_DECLSPEC_IMPORT
50# endif
51#endif
52
53#ifdef ICE_CPP11_MAPPING // C++11 mapping
54
55namespace Ice
56{
57
58class ObjectFactory;
59
60}
61
62namespace Ice
63{
64
73class ICE_CLASS(ICE_API) ObjectFactory
74{
75public:
76
78
91 ICE_DEPRECATED_API("ObjectFactory has been deprecated, use ValueFactory instead.") virtual ::std::shared_ptr<::Ice::Value> create(const ::std::string& type) = 0;
92
98 ICE_DEPRECATED_API("ObjectFactory has been deprecated, use ValueFactory instead.") virtual void destroy() = 0;
99};
100
101}
102
104namespace Ice
105{
106
107}
109
111namespace Ice
112{
113
114using ObjectFactoryPtr = ::std::shared_ptr<ObjectFactory>;
115
116}
118
119#else // C++98 mapping
120
121namespace Ice
122{
123
124class ObjectFactory;
126ICE_API LocalObject* upCast(ObjectFactory*);
128typedef ::IceInternal::Handle< ObjectFactory> ObjectFactoryPtr;
129
130}
131
132namespace Ice
133{
134
143class ICE_API ObjectFactory : public virtual LocalObject
144{
145public:
146
147 typedef ObjectFactoryPtr PointerType;
148
149 virtual ~ObjectFactory();
150
151#ifdef ICE_CPP11_COMPILER
152 ObjectFactory() = default;
153 ObjectFactory(const ObjectFactory&) = default;
154 ObjectFactory& operator=(const ObjectFactory&) = default;
155#endif
156
169 ICE_DEPRECATED_API("ObjectFactory has been deprecated, use ValueFactory instead.") virtual ValuePtr create(const ::std::string& type) = 0;
170
176 ICE_DEPRECATED_API("ObjectFactory has been deprecated, use ValueFactory instead.") virtual void destroy() = 0;
177};
178
180inline bool operator==(const ObjectFactory& lhs, const ObjectFactory& rhs)
181{
182 return static_cast<const LocalObject&>(lhs) == static_cast<const LocalObject&>(rhs);
183}
184
185inline bool operator<(const ObjectFactory& lhs, const ObjectFactory& rhs)
186{
187 return static_cast<const LocalObject&>(lhs) < static_cast<const LocalObject&>(rhs);
188}
190
191}
192
194namespace Ice
195{
196
197}
199
200#endif
201
203#endif
#define ICE_DEPRECATED_API(msg)
Definition Config.h:217
#define ICE_API
Definition Config.h:197
#define ICE_MEMBER(API)
Definition Config.h:177
A factory for objects.
Definition ObjectFactory.h:74
virtual ~ObjectFactory()
virtual void destroy()=0
Called when the factory is removed from the communicator, or if the communicator is destroyed.
virtual ::std::shared_ptr<::Ice::Value > create(const ::std::string &type)=0
Create a new object for a given object type.
The base class for instances of Slice classes.
Definition Value.h:24
Definition BuiltinSequences.h:56
bool operator<(const C &lhs, const C &rhs)
Relational operator for generated structs and classes.
Definition Comparable.h:136