xsi_siobject.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 __XSISIOBJECT_H__
00018 #define __XSISIOBJECT_H__
00019 
00020 #include <xsi_base.h>
00021 
00022 namespace XSI {
00023 
00024 class Application;
00025 
00026 //*****************************************************************************
00064 //*****************************************************************************
00065 
00066 class SICPPSDKDECL SIObject : public CBase
00067 {
00068 public:
00070     SIObject();
00071 
00073     ~SIObject();
00074 
00078     SIObject(const CRef& in_ref);
00079 
00083     SIObject(const SIObject& in_obj);
00084 
00089     bool IsA( siClassID in_ClassID) const;
00090 
00094     siClassID GetClassID() const;
00095 
00101     SIObject& operator=(const SIObject& in_obj);
00102 
00108     SIObject& operator=(const CRef& in_ref);
00109 
00113     Application GetApplication() const;
00114 
00118     CString GetFullName() const;
00119 
00123     CString GetName() const;
00124 
00130     CStatus PutName(const CString& in_name);
00131 
00132     /* \deprecated Provided for backward compatibility only,
00133     */
00134     CStatus PutName(CString& in_name);
00135 
00139     CString GetUniqueName() const;
00140 
00144     CString GetType() const;
00145 
00151     CRef    GetParent() const;
00152 
00157     bool    IsEqualTo( const CRef& in_ref) const;
00158 
00163     CString GetHelp() const;
00164 
00169     CString GetOriginPath() const;
00170 
00175     siInstallationPath GetOrigin() const;
00176 
00181     CStringArray GetCategories() const;
00182 
00241     CRefArray GetNestedObjects() const;
00242 
00243     private:
00244     SIObject * operator&() const;
00245     SIObject * operator&();
00246 };
00247 
00248 };
00249 
00250 #endif // __XSISIOBJECT_H__