inlib
1.2.0
|
Public Member Functions | |
virtual void * | cast (const std::string &a_class) const |
virtual node * | copy () const =0 |
virtual const std::string & | s_cls () const =0 |
virtual void | render (render_action &) |
virtual void | pick (pick_action &) |
virtual void | bbox (bbox_action &) |
virtual void | search (search_action &a_action) |
virtual bool | write (write_action &a_action) |
virtual void | event (event_action &) |
node () | |
virtual | ~node () |
void | reset_touched () |
std::vector< field * > & | fields () |
const std::vector< field * > & | fields () const |
Static Public Member Functions | |
static const std::string & | s_class () |
Protected Member Functions | |
node (const node &) | |
node & | operator= (const node &) |
void | add_field (field *a_field) |
bool | touched () |
bool | write_fields (write_action &a_action) |
inlib::sg::node::node | ( | ) | [inline] |
virtual inlib::sg::node::~node | ( | ) | [inline, virtual] |
inlib::sg::node::node | ( | const node & | ) | [inline, protected] |
void inlib::sg::node::add_field | ( | field * | a_field | ) | [inline, protected] |
virtual void inlib::sg::node::bbox | ( | bbox_action & | ) | [inline, virtual] |
Reimplemented in inlib::sg::group, inlib::sg::_switch, and inlib::sg::noderef.
Definition at line 46 of file node.
{}
virtual void* inlib::sg::node::cast | ( | const std::string & | a_class | ) | const [inline, virtual] |
Reimplemented in inlib::sg::base_camera, inlib::sg::ghost, inlib::sg::group, inlib::sg::holder< T >, inlib::sg::infos, and inlib::sg::noderef.
Definition at line 36 of file node.
{ if(void* p = inlib::cmp_cast<node>(this,a_class)) {return p;} else return 0; }
virtual node* inlib::sg::node::copy | ( | ) | const [pure virtual] |
virtual void inlib::sg::node::event | ( | event_action & | ) | [inline, virtual] |
Reimplemented in inlib::sg::_switch, inlib::sg::group, and inlib::sg::noderef.
Definition at line 59 of file node.
{}
std::vector<field*>& inlib::sg::node::fields | ( | ) | [inline] |
const std::vector<field*>& inlib::sg::node::fields | ( | ) | const [inline] |
virtual void inlib::sg::node::pick | ( | pick_action & | ) | [inline, virtual] |
Reimplemented in inlib::sg::ghost, inlib::sg::group, inlib::sg::_switch, and inlib::sg::noderef.
Definition at line 45 of file node.
{}
virtual void inlib::sg::node::render | ( | render_action & | ) | [inline, virtual] |
Reimplemented in inlib::sg::group, inlib::sg::noderef, and inlib::sg::_switch.
Definition at line 44 of file node.
{}
void inlib::sg::node::reset_touched | ( | ) | [inline] |
static const std::string& inlib::sg::node::s_class | ( | ) | [inline, static] |
Reimplemented in inlib::sg::base_camera, inlib::sg::ghost, inlib::sg::group, inlib::sg::holder< T >, inlib::sg::infos, and inlib::sg::noderef.
Definition at line 32 of file node.
{ static const std::string s_v("inlib::sg::node"); return s_v; }
virtual const std::string& inlib::sg::node::s_cls | ( | ) | const [pure virtual] |
virtual void inlib::sg::node::search | ( | search_action & | a_action | ) | [inline, virtual] |
Reimplemented in inlib::sg::group, inlib::sg::_switch, and inlib::sg::noderef.
Definition at line 47 of file node.
{ if(void* p = cast(a_action.sclass())) { a_action.add_obj(p); //FIXME : if not ALL : a_action.set_done(true); } }
bool inlib::sg::node::touched | ( | ) | [inline, protected] |
virtual bool inlib::sg::node::write | ( | write_action & | a_action | ) | [inline, virtual] |
Reimplemented in inlib::sg::group, and inlib::sg::noderef.
Definition at line 53 of file node.
{ if(!a_action.beg_node(*this)) return false; if(!write_fields(a_action)) return false; if(!a_action.end_node(*this)) return false; return true; }
bool inlib::sg::node::write_fields | ( | write_action & | a_action | ) | [inline, protected] |
Definition at line 89 of file node.
{ unsigned int index = 0; std::vector<field*>::iterator it; for(it=m_fields.begin();it!=m_fields.end();++it,index++) { if(!(*it)->write(a_action.buffer())) { a_action.out() << "inlib::sg::node::write_fields :" << " field.write() failed" << " for field index " << index << " of node class " << s_cls() << "." << std::endl; return false; } } return true; }