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 __XSIICEPORTSTATE_H__
00018 #define __XSIICEPORTSTATE_H__
00019
00020 namespace XSI {
00021
00022 class ICENodeContext;
00023
00101
00102
00103 class SICPPSDKDECL CICEPortState
00104 {
00105 public:
00106 friend class ICENodeContext;
00107
00110 enum DirtyState
00111 {
00112 siTypeDirtyState = 1<<0,
00114 siDataDirtyState = 1<<1,
00116 siTimeDirtyState = 1<<2,
00117 siAnyDirtyState = siTypeDirtyState|siDataDirtyState|siTimeDirtyState
00118 };
00119
00125 CICEPortState( ICENodeContext& in_ctxt, ULONG in_nInputPortID, ULONG in_nInstanceIndex=0 ) ;
00126
00128 CICEPortState();
00129
00131 ~CICEPortState();
00132
00136 CICEPortState(const CICEPortState& in_obj);
00137
00142 bool operator == (const CICEPortState& in_obj) const;
00143
00148 bool operator != (const CICEPortState& in_obj) const;
00149
00154 CICEPortState& operator = (const CICEPortState& in_obj) ;
00155
00159 bool IsValid() const;
00160
00165 bool IsDirty( unsigned short in_flag=siAnyDirtyState ) const;
00166
00169 void ClearState( );
00170
00171 protected:
00172 CStatus Init( const ICENodeContext& in_ctxt, ULONG in_nInputPortID, ULONG in_nGroupInstID );
00173
00174 void* m_pCtxt;
00175 ULONG m_nInputPortID;
00176 };
00177
00178 };
00179 #endif // __XSIICEPORTSTATE_H__