xsi_passcontainer.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 __XSI_PASSCONTAINER_H__
00018 #define __XSI_PASSCONTAINER_H__
00019 
00020 #include <xsi_projectitem.h>
00021 #include <xsi_customproperty.h>
00022 #include <xsi_status.h>
00023 
00024 namespace XSI {
00025 
00026 class Pass;
00027 class Property;
00028 
00029 //*****************************************************************************
00037 //*****************************************************************************
00038 
00039 class SICPPSDKDECL PassContainer : public ProjectItem
00040 {
00041 public:
00043     PassContainer();
00044 
00046     ~PassContainer();
00047 
00051     PassContainer(const CRef& in_ref);
00052 
00056     PassContainer(const PassContainer& in_obj);
00057 
00062     bool IsA( siClassID in_ClassID) const;
00063 
00067     siClassID GetClassID() const;
00068 
00074     PassContainer& operator=(const PassContainer& in_obj);
00075 
00081     PassContainer& operator=(const CRef& in_ref);
00082 
00088     CRefArray   GetPasses() const;
00089 
00095     CRefArray   GetProperties() const;
00096 
00106     Pass AddPass
00107     (
00108         const CString&  in_preset,
00109         const CString&  in_name
00110     );
00111 
00125     Property AddProperty
00126     (
00127         const CString&  in_preset,
00128         bool            in_bBranch = false,
00129         const CString&  in_name = CString()
00130     );
00131 
00140     CStatus     AddCustomProperty
00141     (
00142         const CString&  in_name,
00143         bool            in_bBranch ,
00144         CustomProperty& out_customprop
00145     );
00146 
00147     private:
00148     PassContainer * operator&() const;
00149     PassContainer * operator&();
00150 };
00151 
00152 };
00153 
00154 #endif // __XSI_PASSCONTAINER_H__