00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef CYBAPPEARANCEC_H
00026 #define CYBAPPEARANCEC_H
00027
00028 #include "oaw/ctk/cybnodec.h"
00029 #include "../oawconfig.h"
00030
00031 OAW_BEGIN_NAMESPACE
00032
00033 class CybMaterialC;
00034 class CybTextureC;
00035 class CybTextureTransformC;
00036
00037
00038
00039 class OAW_DLLMAPPING CybAppearanceC : public CybNodeC
00040 {
00041 public:
00042 CybAppearanceC(CybWorldC*);
00043 virtual ~CybAppearanceC();
00044 CybAppearanceC(const CybAppearanceC&);
00045 CybAppearanceC& operator = (const CybAppearanceC&);
00046 virtual void SignAsUser(ObjectI*);
00047
00048 const CybTextureC* GetpTexture(){return m_pTexture;}
00049 const CybMaterialC* GetpMaterial(){return m_pMaterial;}
00050
00051 virtual int SetNode(CybNodeC*);
00052 virtual void Load_material(char*&, const char*,long&);
00053 virtual void Load_texture(char*&, const char*,long&);
00054 virtual void Load_textureTransform(char*&, const char*,long&);
00055 virtual void ToChannel(CybChannelC*, long flag);
00056 virtual void GarbageCollection();
00057 virtual void GetMessageAsObjectI(void*,long,SharedObjectC*);
00058 virtual void FinishInit();
00059
00060 virtual void SetEvent(long,const void*, BaseI*);
00061 virtual short GetFieldData(long,void* data);
00062 virtual long GetFieldEventID(const char*);
00063 virtual long GetFieldDataType(long);
00064
00065 short GetEnlighting(){return m_enlighting;}
00066
00067 protected:
00068 virtual void CreateNewCopy(CybNodeC*);
00069 virtual void SetMaterial(CybMaterialC*);
00070 virtual void SetTexture(CybTextureC*);
00071 virtual void SetTextureTransform(CybTextureTransformC*);
00072
00073 protected:
00074 CybMaterialC* m_pMaterial;
00075 CybTextureC* m_pTexture;
00076 CybTextureTransformC* m_pTextureTransform;
00077 short m_enlighting;
00078 short m_blending;
00079
00080
00081 };
00082
00083 OAW_END_NAMESPACE
00084
00085
00086 #endif
00087
00088
00089
00090
00091
00092
00093
00094
00095