00001
00002
00003
00004
00005 #ifndef EQ_PLY_CONFIG_H
00006 #define EQ_PLY_CONFIG_H
00007
00008 #include <eq/eq.h>
00009
00010 #include "localInitData.h"
00011 #include "frameData.h"
00012 #include "tracker.h"
00013
00014 namespace eqPly
00015 {
00016 class Config : public eq::Config
00017 {
00018 public:
00019 Config( eq::base::RefPtr< eq::Server > parent );
00020
00022 virtual bool init();
00024 virtual bool exit();
00025
00027 virtual uint32_t startFrame();
00028
00029 void setInitData( const LocalInitData& data ) { _initData = data; }
00030 const InitData& getInitData() const { return _initData; }
00031
00033 bool mapData( const uint32_t initDataID );
00034
00036 const Model* getModel() const { return _model; }
00037
00039 virtual bool handleEvent( const eq::ConfigEvent* event );
00040
00042 bool needsRedraw();
00043
00044 protected:
00045 virtual ~Config();
00046
00047 int _spinX, _spinY;
00048
00049 LocalInitData _initData;
00050 FrameData _frameData;
00051
00052 Tracker _tracker;
00053
00054 Model* _model;
00055 ModelDist* _modelDist;
00056
00057 bool _redraw;
00058
00059 private:
00060 void _loadModel();
00061 };
00062 }
00063
00064 #endif // EQ_PLY_CONFIG_H