xsi_primitive.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 __XSIPRIMITIVE_H__
00018 #define __XSIPRIMITIVE_H__
00019 
00020 #include <xsi_projectitem.h>
00021 
00022 namespace XSI {
00023 
00024 class Geometry;
00025 class ConstructionHistory;
00026 
00027 //*****************************************************************************
00061 //*****************************************************************************
00062 
00063 class SICPPSDKDECL Primitive : public ProjectItem
00064 {
00065 public:
00067     Primitive();
00068 
00070     ~Primitive();
00071 
00075     Primitive(const CRef& in_ref);
00076 
00080     Primitive(const Primitive& in_obj);
00081 
00086     bool IsA( siClassID in_ClassID) const;
00087 
00091     siClassID GetClassID() const;
00092 
00098     Primitive& operator=(const Primitive& in_obj);
00099 
00105     Primitive& operator=(const CRef& in_ref);
00106 
00112     Geometry GetGeometry( double in_time = DBL_MAX ) const;
00113 
00172     Geometry GetGeometry(   double              in_time,
00173                             siConstructionMode  in_mode ) const;
00174 
00203     CRefArray GetICETrees() const;
00204 
00205     private:
00206     Primitive * operator&() const;
00207     Primitive * operator&();
00208 };
00209 
00210 };
00211 
00212 #endif // __XSIPRIMITIVE_H__