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

Public Member Functions

virtual void render (render_action &a_action)
 
virtual void pick (pick_action &a_action)
 
virtual void bbox (bbox_action &a_action)
 
virtual void event (event_action &a_action)
 
virtual void search (search_action &a_action)
 
virtual void get_matrix (get_matrix_action &a_action)
 
virtual bool write (write_action &a_action)
 
virtual void is_visible (visible_action &a_action)
 
 noderef (node &a_node)
 
virtual ~noderef ()
 
 noderef (const noderef &a_from)
 
noderefoperator= (const noderef &a_from)
 
const sg::nodenode () const
 
sg::nodenode ()
 
- Public Member Functions inherited from tools::sg::node
virtual void * cast (const std::string &a_class) const
 
virtual const std::string & s_cls () const =0
 
virtual nodecopy () const =0
 
virtual unsigned int cls_version () const
 
virtual const desc_fieldsnode_desc_fields () const
 
virtual bool read (read_action &a_action)
 
virtual void protocol_one_fields (std::vector< field * > &a_fields) const
 
virtual bool draw_in_frame_buffer () const
 
virtual bool touched ()
 
virtual void reset_touched ()
 
 node ()
 
virtual ~node ()
 
void touch ()
 
fieldfield_from_desc (const field_desc &a_desc) const
 
void dump_field_descs (std::ostream &a_out) const
 
fieldfind_field_by_name (const std::string &a_name) const
 

Protected Attributes

sg::nodem_node
 

Additional Inherited Members

- Protected Member Functions inherited from tools::sg::node
 node (const node &)
 
nodeoperator= (const node &)
 
void add_field (field *a_field)
 
bool write_fields (write_action &a_action)
 
bool read_fields (read_action &a_action)
 
field_desc::offset_t field_offset (const field *a_field) const
 
fieldfind_field (const field_desc &a_rdesc) const
 
void check_fields (std::ostream &a_out) const
 

Detailed Description

Definition at line 14 of file noderef.

Constructor & Destructor Documentation

◆ noderef() [1/2]

tools::sg::noderef::noderef ( node a_node)
inline

Definition at line 41 of file noderef.

41 :parent(),m_node(a_node){}

◆ ~noderef()

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

Definition at line 42 of file noderef.

42 {}

◆ noderef() [2/2]

tools::sg::noderef::noderef ( const noderef a_from)
inline

Definition at line 44 of file noderef.

45  :parent(a_from)
46  ,m_node(a_from.m_node)
47  {}

Member Function Documentation

◆ bbox()

virtual void tools::sg::noderef::bbox ( bbox_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 29 of file noderef.

29 {m_node.bbox(a_action);}

◆ event()

virtual void tools::sg::noderef::event ( event_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 30 of file noderef.

30 {m_node.event(a_action);}

◆ get_matrix()

virtual void tools::sg::noderef::get_matrix ( get_matrix_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 37 of file noderef.

37 {m_node.get_matrix(a_action);}

◆ is_visible()

virtual void tools::sg::noderef::is_visible ( visible_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 39 of file noderef.

39 {m_node.is_visible(a_action);}

◆ node() [1/2]

sg::node& tools::sg::noderef::node ( )
inline

Definition at line 53 of file noderef.

53 {return m_node;}

◆ node() [2/2]

const sg::node& tools::sg::noderef::node ( ) const
inline

Definition at line 52 of file noderef.

52 {return m_node;}

◆ operator=()

noderef& tools::sg::noderef::operator= ( const noderef a_from)
inline

Definition at line 48 of file noderef.

48  {
49  parent::operator=(a_from);
50  return *this;
51  }

◆ pick()

virtual void tools::sg::noderef::pick ( pick_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 28 of file noderef.

28 {m_node.pick(a_action);}

◆ render()

virtual void tools::sg::noderef::render ( render_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 18 of file noderef.

18  {
19 #ifdef TOOLS_SG_NODEREF_DEBUG
20  std::ostream& out = a_action.out();
21  out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " begin : " << std::endl;
22  m_node.render(a_action);
23  out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " end," << std::endl;
24 #else
25  m_node.render(a_action);
26 #endif
27  }

◆ search()

virtual void tools::sg::noderef::search ( search_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 31 of file noderef.

31  {
32  if(a_action.do_path()) a_action.path_push(this);
33  m_node.search(a_action);
34  if(a_action.done()) return;
35  if(a_action.do_path()) a_action.path_pop();
36  }

◆ write()

virtual bool tools::sg::noderef::write ( write_action a_action)
inlinevirtual

Reimplemented from tools::sg::node.

Definition at line 38 of file noderef.

38 {return m_node.write(a_action);}

Member Data Documentation

◆ m_node

sg::node& tools::sg::noderef::m_node
protected

Definition at line 55 of file noderef.


The documentation for this class was generated from the following file:
tools::sg::node::write
virtual bool write(write_action &a_action)
Definition: node:82
tools::sg::node::s_cls
virtual const std::string & s_cls() const =0
tools::sg::node::event
virtual void event(event_action &)
Definition: node:88
tools::sg::node::render
virtual void render(render_action &)
Definition: node:53
tools::sg::node::bbox
virtual void bbox(bbox_action &)
Definition: node:55
tools::sg::node::get_matrix
virtual void get_matrix(get_matrix_action &a_action)
Definition: node:76
tools::sg::noderef::m_node
sg::node & m_node
Definition: noderef:55
tools::sg::node::is_visible
virtual void is_visible(visible_action &)
Definition: node:90
tools::sg::node::search
virtual void search(search_action &a_action)
Definition: node:56
tools::sg::node::pick
virtual void pick(pick_action &)
Definition: node:54