![]() |
TAPs 0.7.7.3
|
00001 /****************************************************************************** 00002 TAPsRoomBasic.hpp 00003 ******************************************************************************/ 00009 /****************************************************************************** 00010 SUKITTI PUNAK (08/30/2010) 00011 UPDATE (08/30/2010) 00012 ******************************************************************************/ 00013 #ifndef TAPs_ROOM_BASIC_HPP 00014 #define TAPs_ROOM_BASIC_HPP 00015 00016 #include "../../CD/TAPsBoundingVolumeList.hpp" 00017 00018 BEGIN_NAMESPACE_TAPs 00019 //============================================================================= 00020 template <typename T> 00021 class RoomBasic { 00022 //============================================================================= 00023 public: 00024 // Member Functions ------------------------------------------------------- 00026 friend std::ostream & operator<< ( std::ostream &output, RoomBasic<T> const &obj ) 00027 { 00028 output << obj.StrInfo(); 00029 return output; 00030 } 00031 //------------------------------------------------------------------------- 00033 RoomBasic (); 00035 RoomBasic ( RoomBasic<T> const &orig ); 00037 virtual ~RoomBasic (); 00038 //------------------------------------------------------------------------- 00040 virtual std::string StrInfo () const; 00041 //------------------------------------------------------------------------- 00043 inline RoomBasic<T> & operator= ( RoomBasic<T> const &orig ); 00044 00045 // Data Members ----------------------------------------------------------- 00046 Vector3<T> Center; 00047 Vector3<T> HalfDimensions; 00048 Vector4<T> ColorOfWallXp; 00049 Vector4<T> ColorOfWallXn; 00050 Vector4<T> ColorOfWallYp; 00051 Vector4<T> ColorOfWallYn; 00052 Vector4<T> ColorOfWallZp; 00053 Vector4<T> ColorOfWallZn; 00054 TransformationSupport<T> Transform; 00055 00056 //============================================================================= 00057 protected: 00058 // Member Functions ------------------------------------------------------- 00059 // Data Members ----------------------------------------------------------- 00060 //============================================================================= 00061 private: 00062 // Member Functions ------------------------------------------------------- 00063 // Data Members ----------------------------------------------------------- 00064 //============================================================================= 00065 00066 00067 //============================================================================= 00068 // OpenGL 00069 #if defined(__gl_h_) || defined(__GL_H__) 00070 //----------------------------------------------------------------------------- 00071 public: 00073 virtual void Draw () const; 00074 //----------------------------------------------------------------------------- 00075 #endif // OpenGL 00076 //============================================================================= 00077 00078 00079 //============================================================================= 00080 }; // END CLASS RoomBasic 00081 //============================================================================= 00082 //----------------------------------------------------------------------------- 00084 typedef RoomBasic<int> RoomBasici; 00085 typedef RoomBasic<float> RoomBasicf; 00086 typedef RoomBasic<double> RoomBasicd; 00087 //============================================================================= 00088 END_NAMESPACE_TAPs 00089 //----------------------------------------------------------------------------- 00091 #include "TAPsRoomBasic.cpp" 00092 00094 // Include definition if TAPs_USE_EXPORT is not defined 00095 //#if !defined( TAPs_USE_EXPORT ) 00096 // #include "TAPsRoomBasic.cpp" 00097 //#endif 00098 //----------------------------------------------------------------------------- 00099 #endif 00100 //34567890123456789012345678901234567890123456789012345678901234567890123456789 00101 //--+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----