00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 00029 00030 00031 00032 00033 00034 00035 00036 00037 00038 00039 00040 00041 00042 00043 00044 00045 00046 00047 00048 00049 00050 00051 00052 00053 00054 00055
00056
00057 00058 00059 00060 00061 00062
00063
00064
00065 #ifndef XML256TABLETRANSCODER_HPP
00066 #define XML256TABLETRANSCODER_HPP
00067
00068 #include <util/TransService.hpp>
00069
00070
00071
00072
00073
00074
00075
00076 class XML256TableTranscoder : public XMLTranscoder
00077 {
00078 public :
00079
00080
00081
00082 virtual ~XML256TableTranscoder();
00083
00084
00085
00086
00087
00088 virtual unsigned int transcodeFrom
00089 (
00090 const XMLByte* const srcData
00091 , const unsigned int srcCount
00092 , XMLCh* const toFill
00093 , const unsigned int maxChars
00094 , unsigned int& bytesEaten
00095 , unsigned char* const charSizes
00096 );
00097
00098 virtual unsigned int transcodeTo
00099 (
00100 const XMLCh* const srcData
00101 , const unsigned int srcCount
00102 , XMLByte* const toFill
00103 , const unsigned int maxBytes
00104 , unsigned int& charsEaten
00105 , const UnRepOpts options
00106 );
00107
00108 virtual bool canTranscodeTo
00109 (
00110 const unsigned int toCheck
00111 ) const;
00112
00113
00114 protected :
00115
00116
00117
00118 XML256TableTranscoder
00119 (
00120 const XMLCh* const encodingName
00121 , const unsigned int blockSize
00122 , const XMLCh* const fromTable
00123 , const XMLTransService::TransRec* const toTable
00124 , const unsigned int toTableSize
00125 );
00126
00127
00128
00129
00130
00131 XMLByte xlatOneTo
00132 (
00133 const XMLCh toXlat
00134 ) const;
00135
00136
00137 private :
00138
00139
00140
00141 XML256TableTranscoder();
00142 XML256TableTranscoder(const XML256TableTranscoder&);
00143 void operator=(const XML256TableTranscoder&);
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173
00174
00175
00176
00177
00178
00179 const XMLCh* fFromTable;
00180 unsigned int fToSize;
00181 const XMLTransService::TransRec* fToTable;
00182 };
00183
00184 #endif