Geant4 Cross Reference |
1 // Copyright (C) 2010, Guy Barrand. All rights 1 // Copyright (C) 2010, Guy Barrand. All rights reserved. 2 // See the file tools.license for terms. 2 // See the file tools.license for terms. 3 3 4 #ifndef tools_sg_render_manager 4 #ifndef tools_sg_render_manager 5 #define tools_sg_render_manager 5 #define tools_sg_render_manager 6 6 7 #include "enums" 7 #include "enums" 8 #include "senums" 8 #include "senums" 9 #include "../img" 9 #include "../img" 10 #include "../vdata" 10 #include "../vdata" 11 #include "../scast" 11 #include "../scast" 12 12 13 namespace tools { 13 namespace tools { 14 namespace sg { 14 namespace sg { 15 15 16 class render_manager { 16 class render_manager { 17 public: 17 public: 18 virtual void* cast(const std::string&) const 18 virtual void* cast(const std::string&) const = 0; 19 public: 19 public: 20 virtual bool begin_render(int,int, 20 virtual bool begin_render(int,int, //drawing area pos 21 unsigned int,unsig 21 unsigned int,unsigned int, //drawing area size 22 float,float,float, 22 float,float,float,float,bool a_clear = true) = 0; //back color 23 virtual void end_render() = 0; 23 virtual void end_render() = 0; 24 24 25 virtual unsigned int create_texture(const im 25 virtual unsigned int create_texture(const img_byte&,bool /*a_NEAREST*/) = 0; 26 virtual unsigned int create_gsto_from_data(s 26 virtual unsigned int create_gsto_from_data(size_t,const float*) = 0; 27 27 28 virtual bool is_gsto_id_valid(unsigned int) 28 virtual bool is_gsto_id_valid(unsigned int) const = 0; 29 virtual void delete_gsto(unsigned int) = 0; 29 virtual void delete_gsto(unsigned int) = 0; 30 30 31 // since rm of <TMGR,TRENDER> : 31 // since rm of <TMGR,TRENDER> : 32 virtual gsto_mode get_gsto_mode() const = 0; 32 virtual gsto_mode get_gsto_mode() const = 0; 33 virtual void set_gsto_mode(gsto_mode) = 0; 33 virtual void set_gsto_mode(gsto_mode) = 0; 34 virtual void available_gsto_modes(std::vecto 34 virtual void available_gsto_modes(std::vector<std::string>&) = 0; 35 virtual void available_not_memory_gsto_mode( 35 virtual void available_not_memory_gsto_mode(std::string&) const = 0; 36 virtual size_t used_texture_memory() const = 36 virtual size_t used_texture_memory() const = 0; 37 virtual size_t gstos_size() const = 0; 37 virtual size_t gstos_size() const = 0; 38 public: 38 public: 39 virtual ~render_manager(){} 39 virtual ~render_manager(){} 40 public: 40 public: 41 unsigned int create_gsto_from_data(const std 41 unsigned int create_gsto_from_data(const std::vector<float>& a_xyzs){ 42 const float* _xyzs = vec_data<float>(a_xyz 42 const float* _xyzs = vec_data<float>(a_xyzs); 43 return create_gsto_from_data(a_xyzs.size() 43 return create_gsto_from_data(a_xyzs.size(),_xyzs); 44 } 44 } 45 }; 45 }; 46 46 47 }} 47 }} 48 48 49 #endif 49 #endif