libvrml1++/Attribute.hh

Go to the documentation of this file.
00001 
00020 #ifndef ATTRIBUTE_H_
00021 #define ATTRIBUTE_H_
00022 
00023 #include <string>
00024 #include <vector>
00025 #include "SFColor.hh"
00026 #include "SFVec3f.hh"
00027 #include "SFVec2f.hh"
00028 #include "SFRotation.hh"
00029 #include "SFMatrix.hh"
00030 #include "SFImage.hh"
00031 
00032 using namespace std;
00033 
00034 namespace vrml1 {
00035 
00036 class Attribute
00037 {
00038 public:
00039         Attribute();
00040         virtual ~Attribute();
00041         
00042         void setName(string Name);
00043         
00044         void setImage(SFImage image);
00045         void setString(string s);
00046         void setFloat(float f);
00047         void setMFloat(vector<float> vf);
00048         void setInteger(int i);
00049         void setMInteger(vector<int> vi);
00050         void setBool(bool b);
00051         void setColor(float c0, float c1, float c2);
00052         void setMColor(vector<SFColor> vColor);
00053         void setVec3f(SFVec3f Vec3f);
00054         void setMVec3f(vector<SFVec3f> MVec3f);
00055         void setVec2f(SFVec2f Vec2f);
00056         void setMVec2f(vector<SFVec2f> MVec2f);
00057         void setRotation(SFRotation Rot);
00058         void setMatrix(SFMatrix Matrix);
00059         
00060         SFImage Image() const;
00061         string Name() const;
00062         string String() const;
00063         float Float() const;
00064         vector<float> MFloat() const;
00065         int Integer() const;
00066         vector<int> MInteger() const;
00067         bool Bool() const;
00068         SFColor Color() const;
00069         vector<SFColor> MColor() const;
00070         SFVec2f Vec2f() const;
00071         vector<SFVec2f> MVec2f() const;
00072         SFVec3f Vec3f() const;
00073         vector<SFVec3f> MVec3f() const;
00074         SFRotation Rotation() const;
00075         SFMatrix Matrix() const;
00076         
00077 private:
00078         string m_Name;
00079         
00080         SFImage m_image;
00081         
00082         string m_String;
00083         
00084         float m_Float;
00085         vector<float> m_MFloat;
00086         
00087         int m_Integer;
00088         vector<int> m_MInteger;
00089         
00090         bool m_Bool;
00091         
00092         SFColor m_Color;
00093         vector<SFColor> m_MColor;
00094         
00095         SFVec2f m_Vec2f;
00096         vector<SFVec2f> m_MVec2f;
00097 
00098         SFVec3f m_Vec3f;
00099         vector<SFVec3f> m_MVec3f;
00100         
00101         SFRotation m_Rotation;
00102         
00103         SFMatrix m_Matrix;
00104 };
00105 
00106 }
00107 
00108 #endif /*ATTRIBUTE_H_*/

Generated on Mon Jul 21 23:57:09 2008 for libvrml1++ by  doxygen 1.5.4