メインページ   名前空間リスト   クラス階層   データ構造リスト   ファイルリスト   名前空間メンバ   データ構造メンバ   ファイルメンバ  

Node.h

このファイルの解説を見る。
00001 // -*- mode: c++ -*-
00002 
00003 #ifndef MIX_NODE_H_
00004 #define MIX_NODE_H_
00005 
00006 #include "classes.h"
00007 #include "misc.h"
00008 #include "DefaultXMLTraits.h"
00009 
00010 namespace MiX{
00016   template <class Char,class Traits,class XMLTraits>
00017   class Node{
00018   public:
00019     MiX_Template_Typedef(Char,Traits,XMLTraits);
00020     typedef NamedNode<Char,Traits,XMLTraits> this_type;
00021     typedef NodeContainer<Char,Traits,XMLTraits> nodecontainer_type;
00022   private:
00023     NodeContainer<Char,Traits,XMLTraits>* parent_;
00024   protected:
00030     Node(const this_type& src){ };
00032     Node(){ parent_ = 0; };
00034     void setParent(nodecontainer_type& parent){ parent_ = &parent; };
00035   public:
00037     virtual ~Node()throw();
00039     virtual void destroy()throw() { delete this; } ;
00041     const nodecontainer_type& getParent() const;
00043     nodecontainer_type& getParent();
00045     virtual NodeType getType() const = 0;
00047     virtual string_type toString(bool indent=false,int indent_off=0)const = 0;
00048 
00049     friend class DOM_Parser<Char,Traits,XMLTraits>;
00050     friend class NodeContainer<Char,Traits,XMLTraits>;
00051   };
00052 }
00053 
00054 #ifndef MIX_NODE_CPP_
00055 #include "Node.cpp"
00056 #endif
00057 
00058 #endif

MiXに対してFri Jun 28 05:13:59 2002に生成されました。 doxygen1.2.11.1 の開発者: Dimitri van Heesch, © 1997-2001