00001 //------------------------------------------------------------------------- 00002 // 00003 // File: ClassIdC.h 00004 // Desc: Plugin class ID and super class ID classes. 00005 // Author: memon <memon@inside.org> 00006 // 00007 //------------------------------------------------------------------------- 00008 // Copyright (c) 2000-2002 Moppi Productions. All Rights Reserved. 00009 // This file is part of Moppi Demopaja SDK. For conditions of 00010 // distribution and use, see the accompanying license.txt file. 00011 // http://moppi.inside.org/demopaja/ 00012 //------------------------------------------------------------------------- 00013 00014 #ifndef __DEMOPAJA_CLASSIDC_H__ 00015 #define __DEMOPAJA_CLASSIDC_H__ 00016 00017 #include "PajaTypes.h" 00018 00019 namespace PluginClass { 00020 00022 00035 class ClassIdC 00036 { 00037 public: 00039 ClassIdC(); 00040 00042 ClassIdC( PajaTypes::uint32 ui32ClassA, PajaTypes::uint32 ui32ClassB ); 00043 00045 ClassIdC( const ClassIdC& rClassId ); 00046 00048 virtual ~ClassIdC(); 00049 00051 PajaTypes::uint32 get_class_a() const; 00052 00054 PajaTypes::uint32 get_class_b() const; 00055 00057 bool operator==( const ClassIdC& rClassId ) const; 00058 00060 bool operator!=( const ClassIdC& rClassId ) const; 00061 00063 ClassIdC& operator=( const ClassIdC& rClassId ); 00064 00065 private: 00066 PajaTypes::uint32 m_ui32ClassA, m_ui32ClassB; 00067 }; 00068 00069 00071 00081 class SuperClassIdC 00082 { 00083 public: 00085 SuperClassIdC(); 00086 00088 SuperClassIdC( PajaTypes::uint32 ui32SuperClass ); 00089 00091 SuperClassIdC( const SuperClassIdC& rClassId ); 00092 00094 virtual ~SuperClassIdC(); 00095 00097 PajaTypes::uint32 get_class() const; 00098 00100 bool operator==( const SuperClassIdC& rClassId ) const; 00101 00103 bool operator!=( const SuperClassIdC& rClassId ) const; 00104 00106 SuperClassIdC& operator=( const SuperClassIdC& rClassId ); 00107 00108 private: 00109 PajaTypes::uint32 m_ui32Class; 00110 }; 00111 00112 00114 const SuperClassIdC SUPERCLASS_INTERNAL = SuperClassIdC( 0x0000001 ); 00116 const SuperClassIdC NULL_SUPERCLASS = SuperClassIdC( 0x0000000 ); 00118 const ClassIdC NULL_CLASSID = ClassIdC( 0, 0 ); 00119 00120 }; // namespace 00121 00122 #endif // __DEMOPAJA_CLASSIDC_H__