g4tools  5.4.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
tools::sg::field Class Referenceabstract
Inheritance diagram for tools::sg::field:
Inheritance graph
[legend]

Public Member Functions

virtual void * cast (const std::string &a_class) const
 
virtual const std::string & s_cls () const =0
 
virtual bool write (io::iwbuf &)=0
 
virtual bool read (io::irbuf &)=0
 
virtual bool dump (std::ostream &)=0
 
virtual bool s_value (std::string &) const =0
 
virtual bool s2value (const std::string &)=0
 
virtual ~field ()
 
void touch ()
 
bool touched () const
 
void reset_touched ()
 

Protected Member Functions

 field ()
 
 field (const field &)
 
fieldoperator= (const field &)
 

Protected Attributes

bool m_touched
 

Detailed Description

Definition at line 25 of file field.

Constructor & Destructor Documentation

◆ field() [1/2]

tools::sg::field::field ( )
inlineprotected

Definition at line 40 of file field.

40  :m_touched(true){
41 #ifdef TOOLS_MEM
42  mem::increment(s_class().c_str());
43 #endif
44  }

◆ ~field()

virtual tools::sg::field::~field ( )
inlinevirtual

Definition at line 46 of file field.

46  {
47 #ifdef TOOLS_MEM
48  mem::decrement(s_class().c_str());
49 #endif
50  }

◆ field() [2/2]

tools::sg::field::field ( const field )
inlineprotected

Definition at line 52 of file field.

52  :m_touched(true){
53 #ifdef TOOLS_MEM
54  mem::increment(s_class().c_str());
55 #endif
56  }

Member Function Documentation

◆ cast()

virtual void* tools::sg::field::cast ( const std::string &  a_class) const
inlinevirtual

Reimplemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf< T >, tools::sg::mf< float >, tools::sg::bsf< T >, tools::sg::bsf< colormap_axis_labeling_type >, tools::sg::bsf< hjust >, tools::sg::bsf< sg::painting_policy >, tools::sg::bsf< double >, tools::sg::bsf< sg::font_modeling >, tools::sg::bsf< std::string >, tools::sg::bsf< float >, tools::sg::bsf< int >, tools::sg::bsf< sg::hjust >, tools::sg::bsf< unsigned int >, tools::sg::bsf< sg::vjust >, tools::sg::bsf< rotf >, tools::sg::bsf< img< T > >, tools::sg::bsf< font_modeling >, tools::sg::bsf< shape_type >, tools::sg::bsf< lpat >, tools::sg::bsf< mat4f >, tools::sg::bsf< sg::area_style >, tools::sg::bsf< sg::marker_style >, tools::sg::bsf< tools::colorf >, tools::sg::bsf< marker_style >, tools::sg::bsf< sg::hatching_policy >, tools::sg::bsf< bool >, tools::sg::bsf< vec2f >, tools::sg::bsf< sg::projection_type >, tools::sg::bsf< winding_type >, tools::sg::bsf< vec3f >, tools::sg::bsf< gl::mode_t >, tools::sg::bsf< polyhedron >, tools::sg::bsf< vec4f >, tools::sg::bsf< font_type >, tools::sg::bsf< img< byte > >, tools::sg::bsf< draw_type >, tools::sg::bmf< T >, tools::sg::bmf< unit_type >, tools::sg::bmf< std::string >, tools::sg::bmf< std::vector< float > >, tools::sg::bmf< float >, tools::sg::bmf< std::vector< T > >, tools::sg::bmf< tools::vec3f >, tools::sg::bmf< tools::vec2f >, and tools::sg::bmf< std::vector< unichar > >.

Definition at line 28 of file field.

28  {
29  if(void* p = cmp_cast<field>(this,a_class)) {return p;}
30  else return 0;
31  }

◆ dump()

virtual bool tools::sg::field::dump ( std::ostream &  )
pure virtual

Implemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_string, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf_string, tools::sg::mf< T >, tools::sg::mf< float >, tools::sg::sf_rotf, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, and tools::hep::sf_polyhedron.

◆ operator=()

field& tools::sg::field::operator= ( const field )
inlineprotected

Definition at line 57 of file field.

57 {m_touched=false;return *this;}

◆ read()

virtual bool tools::sg::field::read ( io::irbuf )
pure virtual

Implemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_string, tools::sg::sf_rotf, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf_string, tools::sg::mf< T >, tools::sg::mf< float >, and tools::hep::sf_polyhedron.

◆ reset_touched()

void tools::sg::field::reset_touched ( )
inline

Definition at line 61 of file field.

61 {m_touched = false;}

◆ s2value()

virtual bool tools::sg::field::s2value ( const std::string &  )
pure virtual

Implemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_string, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::sf_rotf, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf_string, tools::sg::mf< T >, tools::sg::mf< float >, and tools::hep::sf_polyhedron.

◆ s_cls()

virtual const std::string& tools::sg::field::s_cls ( ) const
pure virtual

◆ s_value()

virtual bool tools::sg::field::s_value ( std::string &  ) const
pure virtual

Implemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_string, tools::sg::sf_rotf, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf_string, tools::sg::mf< T >, tools::sg::mf< float >, and tools::hep::sf_polyhedron.

◆ touch()

void tools::sg::field::touch ( )
inline

Definition at line 59 of file field.

59 {m_touched = true;}

◆ touched()

bool tools::sg::field::touched ( ) const
inline

Definition at line 60 of file field.

60 {return m_touched;}

◆ write()

virtual bool tools::sg::field::write ( io::iwbuf )
pure virtual

Implemented in tools::sg::sf_vec< T, TT >, tools::sg::sf_vec< tools::colorf, float >, tools::sg::sf_vec< mat4f, float >, tools::sg::sf_vec< vec4f, float >, tools::sg::sf_vec< vec2f, float >, tools::sg::sf_vec< vec3f, float >, tools::sg::sf_string, tools::sg::sf_rotf, tools::sg::sf_img< T >, tools::sg::sf_img< byte >, tools::sg::sf_enum< T >, tools::sg::sf_enum< colormap_axis_labeling_type >, tools::sg::sf_enum< hjust >, tools::sg::sf_enum< sg::painting_policy >, tools::sg::sf_enum< sg::font_modeling >, tools::sg::sf_enum< sg::hjust >, tools::sg::sf_enum< sg::vjust >, tools::sg::sf_enum< font_modeling >, tools::sg::sf_enum< shape_type >, tools::sg::sf_enum< sg::area_style >, tools::sg::sf_enum< sg::marker_style >, tools::sg::sf_enum< marker_style >, tools::sg::sf_enum< sg::hatching_policy >, tools::sg::sf_enum< sg::projection_type >, tools::sg::sf_enum< winding_type >, tools::sg::sf_enum< font_type >, tools::sg::sf_enum< draw_type >, tools::sg::sf< T >, tools::sg::sf< double >, tools::sg::sf< float >, tools::sg::sf< int >, tools::sg::sf< unsigned int >, tools::sg::sf< lpat >, tools::sg::sf< bool >, tools::sg::sf< gl::mode_t >, tools::sg::mf_std_vec< T >, tools::sg::mf_std_vec< float >, tools::sg::mf_std_vec< unichar >, tools::sg::mf_vec< T, TT >, tools::sg::mf_vec< tools::vec3f, float >, tools::sg::mf_vec< tools::vec2f, float >, tools::sg::mf_enum< T >, tools::sg::mf_enum< unit_type >, tools::sg::mf_string, tools::sg::mf< T >, tools::sg::mf< float >, and tools::hep::sf_polyhedron.

Member Data Documentation

◆ m_touched

bool tools::sg::field::m_touched
protected

Definition at line 63 of file field.


The documentation for this class was generated from the following file:
tools::sg::field::m_touched
bool m_touched
Definition: field:63