Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

cybpfchannelc.h

Go to the documentation of this file.
00001 #ifndef CybPFChannelC_H
00002 #define CybPFChannelC_H
00003 
00004 #include "oaw/ctk/cybgraphicchannelc.h"
00005 
00006 class pfChannel;
00007 class pfPipe;
00008 class pfScene;
00009 
00010 class GLWndC;
00011 
00012 class CybPFChannelC : public CybGraphicChannelC
00013 {
00014 public:
00015   CybPFChannelC(double vw, double vh, int buffer,GLWndC*,pfPipe*);
00016   void* operator new(size_t);
00017   void operator delete(void*,size_t);
00018   
00019   GLWndC* GetGLWnd() const {return m_pGLWnd;}
00020   
00021   virtual void SetViewplanePos(const VectorC&);
00022   virtual void SetViewplaneNorm(const VectorC&);
00023   virtual void SetProjectionpoint(const VectorC& v);
00024   virtual void SetViewplaneRol(double rol);
00025   virtual void SetScreenSize(double x, double y);
00026   virtual void SetFar(const double& f){m_far=f;}
00027   virtual void SetNear(const double& n){m_near=n;}
00028 
00029   //virtual Matrix4C PopTransformMatrix();
00030   //virtual void PushTransformMatrix();
00031   //virtual void MultTransformMatrix(const Matrix4C&);
00032 
00033   
00034   virtual void ClearBuffers();
00035   virtual void Process(CybGroupC*, short);
00036   virtual void SetWorld(CybWorldC* pW);
00037   
00038   pfChannel* GetPFChannel() const {return m_pChannel;}
00039 
00040 protected:
00041   virtual void travDraw();
00042   virtual void travCull();
00043   virtual void travApp();
00044 private:
00045   void InitChannel();
00046   void UpdateFrustum();
00047   static void DrawFunc(pfChannel *chan, void *data);
00048   static void CullFunc(pfChannel *chan, void *data);
00049   static void AppFunc(pfChannel *chan, void *data);
00050   
00051 protected:
00052   GLWndC* m_pGLWnd;
00053 
00054   double m_dScale;
00055 
00056 protected:
00057   pfChannel* m_pChannel;
00058   pfPipe* m_pPipe;
00059   int m_glBuffer;
00060 
00061 };
00062 
00063 #endif
00064 
00065 
00066 
00067 
00068 
00069 
00070 
00071 

Generated on Tue Jul 29 14:24:11 2003 for Open ActiveWrl by doxygen1.3-rc2