25 #define DEFINE_HANDLE_CLASS(HandleKind) \
29 class HandleKind##Implementation; \
33 class RTI_EXPORT HandleKind \
43 HandleKind(HandleKind const & rhs); \
46 operator=(HandleKind const & rhs); \
49 bool isValid() const; \
52 bool operator==(HandleKind const & rhs) const; \
53 bool operator!=(HandleKind const & rhs) const; \
54 bool operator< (HandleKind const & rhs) const; \
58 VariableLengthData encode() const; \
61 unsigned long encodedLength() const; \
62 unsigned long encode( \
63 void* buffer, unsigned long bufferSize) const \
64 throw (CouldNotEncode); \
66 std::wstring toString() const; \
72 friend class HandleKind##Friend; \
74 const HandleKind##Implementation* getImplementation() const; \
76 HandleKind##Implementation* getImplementation(); \
79 HandleKind(HandleKind##Implementation* impl); \
82 HandleKind(VariableLengthData const & encodedValue); \
84 HandleKind##Implementation* _impl; \
89 std::wostream RTI_EXPORT & \
90 operator << (std::wostream &, HandleKind const &);
110 #endif // RTI_Handle_h
his file contains a class to hold an arbitrary array of bytes for encoded values, attribute values...
This file contains definitions that are used to isolate platform-specific elements of the API...
#define DEFINE_HANDLE_CLASS(HandleKind)
Definition: Handle.h:25