X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Console%2FNode.cci;h=f4fbc11856d5a551781180702fc8106b4a2191e1;hb=16d94efc2159cba35fc44e5b26747ae0a2ab237b;hp=2881e5640b61fb11d120e3586cba779f350427fb;hpb=5e9e6057a4e5c1241ff3f1b75b0f797eb570725d;p=senf.git diff --git a/Console/Node.cci b/Console/Node.cci index 2881e56..f4fbc11 100644 --- a/Console/Node.cci +++ b/Console/Node.cci @@ -45,7 +45,9 @@ prefix_ std::string const & senf::console::GenericNode::name() prefix_ senf::console::GenericNode::GenericNode(std::string const & name) : name_ (name), parent_ (0) -{} +{ + ///\fixme Provide a default name if 'name' is empty ? +} prefix_ void senf::console::GenericNode::name(std::string const & name) { @@ -64,6 +66,17 @@ prefix_ boost::shared_ptr senf::console::GenericNo parent_ ? parent_->shared_from_this() : ptr() ); } +prefix_ senf::console::GenericNode::ptr senf::console::GenericNode::thisptr() +{ + return shared_from_this(); +} + +prefix_ senf::console::GenericNode::cptr senf::console::GenericNode::thisptr() + const +{ + return shared_from_this(); +} + /////////////////////////////////////////////////////////////////////////// // senf::console::DirectoryNode @@ -79,14 +92,14 @@ prefix_ senf::console::DirectoryNode & senf::console::DirectoryNode::operator[](std::string const & name) const { - return dynamic_cast(lookup(name)); + return dynamic_cast(get(name)); } prefix_ senf::console::CommandNode & senf::console::DirectoryNode::operator()(std::string const & name) const { - return dynamic_cast(lookup(name)); + return dynamic_cast(get(name)); } prefix_ senf::console::DirectoryNode & @@ -106,6 +119,17 @@ prefix_ senf::console::DirectoryNode::DirectoryNode(std::string const & name) : GenericNode(name) {} +prefix_ senf::console::DirectoryNode::ptr senf::console::DirectoryNode::thisptr() +{ + return boost::static_pointer_cast(shared_from_this()); +} + +prefix_ senf::console::DirectoryNode::cptr senf::console::DirectoryNode::thisptr() + const +{ + return boost::static_pointer_cast(shared_from_this()); +} + /////////////////////////////////////////////////////////////////////////// // senf::console::CommandNode @@ -113,6 +137,17 @@ prefix_ senf::console::CommandNode::CommandNode(std::string const & name) : GenericNode(name) {} +prefix_ senf::console::CommandNode::ptr senf::console::CommandNode::thisptr() +{ + return boost::static_pointer_cast(shared_from_this()); +} + +prefix_ senf::console::CommandNode::cptr senf::console::CommandNode::thisptr() + const +{ + return boost::static_pointer_cast(shared_from_this()); +} + ///////////////////////////////cci.e/////////////////////////////////////// #undef prefix_