ZGen  0.2.0
a linearization system for natural language.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
alphabet.h
Go to the documentation of this file.
1 // Define interface for the alphabet class.
2 #ifndef __ZGEN_ENGINE_ALPHABET_H__
3 #define __ZGEN_ENGINE_ALPHABET_H__
4 
5 namespace ZGen {
6 
7 namespace Engine {
8 
10 public:
12 
19  virtual const char* decode(int id) const = 0;
20 
27  virtual int encode(const char* name) const = 0;
28 };
29 
31 public:
33 
41  virtual int insert(const char* name) = 0;
42 
49  virtual const char* decode(int id) const = 0;
50 
57  virtual int encode(const char* name) const = 0;
58 };
59 
60 } // end for namespace Engine
61 
62 } // end for namespace ZGen
63 
64 #endif // end for __ZGEN_ALPHABET_H__
InmutableAlphabet()
Definition: alphabet.h:11
Definition: alphabet.h:30
MutableAlphabet()
Definition: alphabet.h:32
virtual int encode(const char *name) const =0
virtual const char * decode(int id) const =0
virtual int insert(const char *name)=0
Definition: alphabet.h:9
virtual const char * decode(int id) const =0
virtual int encode(const char *name) const =0