# xsi_particletype.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 __XSIPARTICLETYPE_H__
    00018 #define __XSIPARTICLETYPE_H__
    00019
    00020 #include <xsi_property.h>
    00021 #include <xsi_value.h>
    00022 #include <xsi_status.h>
    00023 #include <xsi_string.h>
    00024 #include <xsi_decl.h>
    00025
    00026
    00027 namespace XSI {
    00028
    00029
    00030 //*****************************************************************************
    00087 //*****************************************************************************
    00088
    00089 class SICPPSDKDECL ParticleType : public Property
    00090 {
    00091 public:
    00093     ParticleType();
    00094
    00096     ~ParticleType();
    00097
    00101     ParticleType(const CRef& in_ref);
    00102
    00106     ParticleType(const ParticleType& in_obj);
    00107
    00112     bool IsA( siClassID in_ClassID) const;
    00113
    00117     siClassID GetClassID() const;
    00118
    00124     ParticleType& operator=(const ParticleType& in_obj);
    00125
    00131     ParticleType& operator=(const CRef& in_ref);
    00132
    00137     LONG GetID() const;
    00138
    00151     CStatus AddAttribute
    00152     (
    00153         const CString&                  in_name,
    00154         XSI::siParticleAttributeType    in_type
    00155     )const;
    00156
    00163     CStatus RemoveAttribute(const CString& in_name )const;
    00164
    00169     CStringArray GetAttributeNames()const;
    00170
    00177     XSI::siParticleAttributeType GetAttributeType( const CString& in_name )const;
    00178
    00179     private:
    00180     ParticleType * operator&() const;
    00181     ParticleType * operator&();
    00182 };
    00183
    00184 };
    00185 #endif // __XSIPARTICLETYPE_H__