xsi_filter.h
Go to the documentation of this file.
00001 //*****************************************************************************
00010 //*****************************************************************************
00011 
00012 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00013 #pragma once
00014 #endif
00015 
00016 #ifndef __XSIFILTER_H__
00017 #define __XSIFILTER_H__
00018 
00019 #include <xsi_siobject.h>
00020 
00021 namespace XSI {
00022 
00023 //*****************************************************************************
00111 //*****************************************************************************
00112 
00113 class SICPPSDKDECL Filter : public SIObject
00114 {
00115 public:
00117     Filter();
00118 
00120     ~Filter();
00121 
00125     Filter(const CRef& in_ref);
00126 
00130     Filter(const Filter& in_obj);
00131 
00136     bool IsA( siClassID in_ClassID) const;
00137 
00141     siClassID GetClassID() const;
00142 
00148     Filter& operator=(const Filter& in_obj);
00149 
00155     Filter& operator=(const CRef& in_ref);
00156 
00161     bool Match( const CRef& in_obj ) const;
00162 
00168     bool Match( const CRefArray& in_array ) const;
00169 
00175     bool IsApplicable( const CRef& in_obj ) const;
00176 
00183     bool IsApplicable( const CRefArray& in_array ) const;
00184 
00190     CRefArray Subset( const CRefArray& in_array ) const;
00191 
00192     private:
00193     Filter * operator&() const;
00194     Filter * operator&();
00195 };
00196 
00197 };
00198 
00199 #endif // __XSIFilter_H__