16#ifndef __Ice_ObjectFactory_h__
17#define __Ice_ObjectFactory_h__
31#ifndef ICE_IGNORE_VERSION
32# if ICE_INT_VERSION / 100 != 307
33# error Ice version mismatch!
35# if ICE_INT_VERSION % 100 >= 50
36# error Beta header file detected
38# if ICE_INT_VERSION % 100 < 11
39# error Ice patch level mismatch!
44# if defined(ICE_STATIC_LIBS)
46# elif defined(ICE_API_EXPORTS)
47# define ICE_API ICE_DECLSPEC_EXPORT
49# define ICE_API ICE_DECLSPEC_IMPORT
53#ifdef ICE_CPP11_MAPPING
114using ObjectFactoryPtr = ::std::shared_ptr<ObjectFactory>;
126ICE_API LocalObject* upCast(ObjectFactory*);
128typedef ::IceInternal::Handle< ObjectFactory> ObjectFactoryPtr;
143class ICE_API ObjectFactory :
public virtual LocalObject
147 typedef ObjectFactoryPtr PointerType;
149 virtual ~ObjectFactory();
151#ifdef ICE_CPP11_COMPILER
152 ObjectFactory() =
default;
153 ObjectFactory(
const ObjectFactory&) =
default;
154 ObjectFactory& operator=(
const ObjectFactory&) =
default;
169 ICE_DEPRECATED_API(
"ObjectFactory has been deprecated, use ValueFactory instead.") virtual ValuePtr create(const ::std::
string& type) = 0;
176 ICE_DEPRECATED_API(
"ObjectFactory has been deprecated, use ValueFactory instead.") virtual
void destroy() = 0;
180inline
bool operator==(const ObjectFactory& lhs, const ObjectFactory& rhs)
182 return static_cast<const LocalObject&
>(lhs) ==
static_cast<const LocalObject&
>(rhs);
185inline bool operator<(
const ObjectFactory& lhs,
const ObjectFactory& rhs)
187 return static_cast<const LocalObject&
>(lhs) <
static_cast<const LocalObject&
>(rhs);
#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 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