xsi_userdatablob.h Source File
 
 
 
xsi_userdatablob.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSIUSERDATABLOB_H__
00018 #define __XSIUSERDATABLOB_H__
00019 
00020 #include <xsi_property.h>
00021 #include <xsi_value.h>
00022 #include <xsi_status.h>
00023 
00024 namespace XSI {
00025 
00026 //*****************************************************************************
00094 //*****************************************************************************
00095 
00096 class SICPPSDKDECL UserDataBlob : public Property
00097 {
00098 public:
00100         UserDataBlob();
00101 
00103         ~UserDataBlob();
00104 
00108         UserDataBlob(const CRef& in_ref);
00109 
00113         UserDataBlob(const UserDataBlob& in_obj);
00114 
00119         bool IsA( siClassID in_ClassID) const;
00120 
00124         siClassID GetClassID() const;
00125 
00131         UserDataBlob& operator=(const UserDataBlob& in_obj);
00132 
00138         UserDataBlob& operator=(const CRef& in_ref);
00139 
00151         CStatus GetValue( const unsigned char *& out_buffer, unsigned int& out_size ) const ;
00152 
00164         CStatus PutValue( const unsigned char * in_buffer, unsigned int in_size ) ;
00165 
00169         bool IsEmpty() const ;
00170 
00173         void Clear() ;
00174 
00177         unsigned int Size() const ;
00178 
00179         private:
00180         UserDataBlob * operator&() const;
00181         UserDataBlob * operator&();
00182 };
00183 
00184 };
00185 #endif // __XSIUSERDATABLOB_H__