00001 #ifndef MESHTRANSFORMCOMPUTERGLOBALVARIABLES_H
00002 #define MESHTRANSFORMCOMPUTERGLOBALVARIABLES_H
00003
00004 #include <X3DTK/kernel.h>
00005
00006 #include <list>
00007
00008 namespace X3DTK {
00009 namespace MESH {
00010
00011
00012
00013 template<class MData, class VData, class EData, class FData, bool readOnly>
00014 class TransformComputerStateVariables : public StateVariables
00015 {
00016 public:
00017 TransformComputerStateVariables();
00018
00019 void init();
00020 void finish();
00021
00022 void pushMatrix(const SFMatrix34f &transformation);
00023 void popMatrix();
00024
00025 SFMatrix34f getMatrix() const {return _matrixStack.front();};
00026
00027 private:
00028 std::list<SFMatrix34f> _matrixStack;
00029 };
00030
00031 }
00032 }
00033
00034 #include "MESH_TransformComputerStateVariables.inl"
00035
00036 #endif