84 lines
2.3 KiB
C
84 lines
2.3 KiB
C
|
|
/*********************************************************************
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>: TestNode.h //TODO<44><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Shanghai Baosight Software Co., Ltd.
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>//TODO<44><4F><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD><D3B1>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
|
|||
|
|
* <EFBFBD><EFBFBD>//TODO
|
|||
|
|
* <EFBFBD><EFBFBD>//TODO
|
|||
|
|
*
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 0.5 2010-06-15 <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>CppTest<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӻ<EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* 0.2 2010-03-31 <EFBFBD>쳤ʢ <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
|||
|
|
* 0.1 2010-03-26 <EFBFBD>쳤ʢ <EFBFBD><EFBFBD><EFBFBD>α<EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
* %USER%
|
|||
|
|
*********************************************************************/
|
|||
|
|
#ifndef _TestNode_H
|
|||
|
|
#define _TestNode_H
|
|||
|
|
#include <iostream>
|
|||
|
|
#include <string.h>
|
|||
|
|
#include <string>
|
|||
|
|
#include <list>
|
|||
|
|
using namespace std;
|
|||
|
|
|
|||
|
|
namespace baosight
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
class TestNode;
|
|||
|
|
typedef list<TestNode*> TestNodeList;
|
|||
|
|
|
|||
|
|
/*********************************************************************
|
|||
|
|
* <EFBFBD><EFBFBD> <EFBFBD><EFBFBD>: TestNode
|
|||
|
|
* <EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Shanghai Baosight Software Co., Ltd.
|
|||
|
|
* <EFBFBD><EFBFBD> ְ <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>Խڵ㣬һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ڵ㣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýڵ<EFBFBD><EFBFBD>»<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӽڵ㣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ڵ<EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Σ<EFBFBD>ֻ<EFBFBD>ǵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD>ʾ
|
|||
|
|
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2010-07-25 tonny //TODO<44><4F><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD><D3B1><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
*********************************************************************/
|
|||
|
|
class TestNode
|
|||
|
|
{
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
TestNode(){}
|
|||
|
|
TestNode(string name,TestNode* father = NULL,char m_keyName = '0'):m_str(name),m_key(m_keyName),p_father(father){}
|
|||
|
|
|
|||
|
|
string getName(){ return m_str ;}
|
|||
|
|
TestNode* getFather(){ return p_father ;}
|
|||
|
|
void setFather(TestNode* father){ p_father = father;}
|
|||
|
|
TestNode* getChild(string name);
|
|||
|
|
TestNode* getChild(char key);
|
|||
|
|
|
|||
|
|
list<TestNode*>& getAllChild(){return m_childNodes;}
|
|||
|
|
|
|||
|
|
virtual int getChildNum() { return m_childNodes.size(); }
|
|||
|
|
virtual char getKey() { return m_key;}
|
|||
|
|
virtual string getMenu();
|
|||
|
|
|
|||
|
|
void setKey(char c ) { m_key = c;}
|
|||
|
|
virtual int addChild(TestNode* pnode);
|
|||
|
|
virtual int test(void* data = 0) { cout<<"hi,I am "<<m_str<<endl;return 0;}
|
|||
|
|
virtual int clearChild(TestNode* child){ return 0;}
|
|||
|
|
virtual int clearAllChild();
|
|||
|
|
virtual ~TestNode() ;
|
|||
|
|
TestNode* existNode(TestNode* existnode, TestNode* father = NULL);
|
|||
|
|
TestNode* existNodeInTree(TestNode* node);
|
|||
|
|
private:
|
|||
|
|
char genKey(int num);
|
|||
|
|
|
|||
|
|
|
|||
|
|
protected:
|
|||
|
|
TestNodeList m_childNodes;
|
|||
|
|
TestNode* p_father;
|
|||
|
|
string m_str;
|
|||
|
|
char m_key;
|
|||
|
|
};
|
|||
|
|
typedef TestNode FirstLevelNode;
|
|||
|
|
typedef TestNode SecondLevelNode;
|
|||
|
|
typedef TestNode ThirdLevelNode;
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
#endif
|