00001 /* 00002 * RContext.h 00003 * 00004 * Created on: 28 sty 2014 00005 * Author: dwg 00006 */ 00007 00008 #ifndef _RContext_h__ 00009 #define _RContext_h__ 00010 00011 00012 #include <vector> 00013 #include "Enums.h" 00014 #include "Camera.h" 00015 #include "MathHelper.h" 00016 //#include "Mesh.h" 00017 #include "Color.h" 00018 00019 00020 namespace FemViewer { 00021 00022 class Mesh; 00023 class Field; 00024 class Accelerator; 00025 class Grid; 00026 class mfvBaseObject; 00027 class ViewManager; 00028 00029 template<typename T,typename U> class ArrayT; 00030 template<typename T> class Array2; 00031 00032 class RContext 00033 { 00034 public: 00035 RContext(void); 00036 RContext(const ViewManager& VMgr, 00037 Mesh* mesh_, // because we change elments 00038 Field* field_); 00039 RContext(const RContext& rhs); 00040 ~RContext(void); 00041 Camera camera; 00042 Mesh* mesh; 00043 Field* field; 00044 uint32_t imgw, imgh; 00045 float imageAspectRatio; 00046 ColorRGB backgroundColor; 00047 Array2<ColorRGB> *image; 00048 std::vector<mfvBaseObject *> objects; 00049 Grid *accelStruct; 00050 }; 00051 00052 }// end namespace FemViewer 00053 #endif /* _RContext_h__ */