1 #ifndef EntityCatalog_INCLUDED 2 #define EntityCatalog_INCLUDED 1 3 4 #ifdef __GNUG__ 5 #pragma interface 6 #endif 7 8 #include "types.h" 9 #include "StringC.h" 10 #include "Resource.h" 11 #include "SubstTable.h" 12 13 #ifdef SP_NAMESPACE 14 namespace SP_NAMESPACE { 15 #endif 16 17 class Messenger; 18 class CharsetInfo; 19 class EntityDecl; 20 21 class SP_API EntityCatalog : public Resource { 22 public: 23 class SP_API Syntax { 24 public: 25 virtual Boolean namecaseGeneral() const = 0; 26 virtual Boolean namecaseEntity() const = 0; 27 virtual const SubstTable<Char> &upperSubstTable() const = 0; 28 virtual const StringC &peroDelim() const = 0; 29 }; 30 virtual ~EntityCatalog(); 31 virtual Boolean sgmlDecl(const CharsetInfo &, 32 Messenger &, 33 StringC &) const; 34 virtual Boolean lookup(const EntityDecl &, 35 const Syntax &, 36 const CharsetInfo &, 37 Messenger &, 38 StringC &) const; 39 virtual Boolean lookupPublic(const StringC &, 40 const CharsetInfo &, 41 Messenger &, 42 StringC &) const; 43 // This is for a character described by a minimum literal 44 // in the SGML declaration. 45 virtual Boolean lookupChar(const StringC &, 46 const CharsetInfo &, 47 Messenger &, 48 UnivChar &) const; 49 }; 50 51 #ifdef SP_NAMESPACE 52 } 53 #endif 54 55 #endif /* not EntityCatalog_INCLUDED */ 56