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 _CIvfTexCoordList_h_
00026 #define _CIvfTexCoordList_h_
00027
00028 #include <ivf/IvfBase.h>
00029 #include <ivf/IvfGL.h>
00030
00031 #include <ivfmath/IvfVec3d.h>
00032
00033 IvfSmartPointer(CIvfTexCoordList);
00034
00044 class IVF_API CIvfTexCoordList : public CIvfBase {
00045 private:
00046 GLfloat* m_vertices;
00047 long m_allocSize;
00048 long m_size;
00049 long m_blockSize;
00050 long m_next;
00051 public:
00053 CIvfTexCoordList();
00054
00056 virtual ~CIvfTexCoordList();
00057
00058 IvfClassInfo("CIvfTexCoordList",CIvfBase);
00059
00061 void add(double s, double t);
00062
00064 void clear();
00065
00071 void getVertex(int idx, double &s, double &t);
00072
00074 void setSize(int size);
00075
00077 int getSize();
00078
00084 void setVertex(int idx, double s, double t);
00085
00087 void* getData();
00088
00090 GLenum getDataType();
00091
00093 GLsizei getStride();
00094
00096 GLint getCompSize();
00097 protected:
00098 double getComp(int idx);
00099 void setComp(int idx, double value);
00100 void add(double comp);
00101 };
00102
00103 #endif