00001 #ifndef __CHM_TABLE_GRAMMAR_CLASS_H__
00002 #define __CHM_TABLE_GRAMMAR_CLASS_H__
00003
00004 #include <CHM/CHMminimumInclude.h>
00005 #include <CHM/CHMdataType.h>
00006
00007 class CHMtableGrammarPrivate;
00008
00009 class CHMtableGrammar
00010 {
00011 public:
00012 CHMtableGrammar();
00013 explicit CHMtableGrammar(CHMtableGrammarHandle Handle);
00014 virtual ~CHMtableGrammar();
00015
00016 CHMtableGrammarHandle GetTableGrammarHandle() const;
00017
00018
00019 public:
00020 const CHMchar* TableGrammarName() const;
00021 size_t CountOfSubGrammar() const;
00022 bool IsNode() const;
00023 CHMtableGrammarHandle GetSubGrammar(size_t Index) const;
00024 CHMtableDefinitionHandle GetTableDefHandle() const;
00025
00026
00027
00028
00029
00033 CHMstring Dump() const;
00034
00035 private:
00036 CHMtableGrammarPrivate* pMember;
00037 CHMtableGrammar(const CHMtableGrammar& Orig);
00038 CHMtableGrammar& operator=(const CHMtableGrammar& Orig);
00039 };
00040
00041
00042
00043
00044
00045 #endif // __CHM_TABLE_GRAMMAR_CLASS_H__