charconvfw/Charconv/ongoing/Group/SNMTOOL.RTF
author William Roberts <williamr@symbian.org>
Fri, 30 Apr 2010 13:21:39 +0100
branchRCL_3
changeset 20 7ea2c3c49480
parent 0 1fb32624e06b
permissions -rw-r--r--
Remerge fixes for Bug 1850 and Bug 1543

{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f16\froman\fcharset238\fprq2 Times New Roman CE;}{\f17\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f19\froman\fcharset161\fprq2 Times New Roman Greek;}
{\f20\froman\fcharset162\fprq2 Times New Roman Tur;}{\f21\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f22\fswiss\fcharset238\fprq2 Arial CE;}{\f23\fswiss\fcharset204\fprq2 Arial Cyr;}{\f25\fswiss\fcharset161\fprq2 Arial Greek;}
{\f26\fswiss\fcharset162\fprq2 Arial Tur;}{\f27\fswiss\fcharset186\fprq2 Arial Baltic;}{\f28\fmodern\fcharset238\fprq1 Courier New CE;}{\f29\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f31\fmodern\fcharset161\fprq1 Courier New Greek;}
{\f32\fmodern\fcharset162\fprq1 Courier New Tur;}{\f33\fmodern\fcharset186\fprq1 Courier New Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;
\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{
\widctlpar\adjustright \fs20 \snext0 Normal;}{\s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28 \sbasedon0 \snext0 heading 1;}{\s2\sb240\sa60\keepn\widctlpar\adjustright \b\i\f1 \sbasedon0 \snext0 heading 2;}{
\s3\sb240\sa60\keepn\widctlpar\adjustright \f1 \sbasedon0 \snext0 heading 3;}{\s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1 \sbasedon0 \snext0 heading 4;}{\s5\sb240\sa60\widctlpar\adjustright \f1\fs22 \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive 
Default Paragraph Font;}{\s15\widctlpar\adjustright \fs20 \sbasedon0 \snext15 footnote text;}{\*\cs16 \additive \super \sbasedon10 footnote reference;}}{\info{\author Preferred Customer}{\operator Tim Band}{\creatim\yr1999\mo3\dy16\hr14\min36}
{\revtim\yr2003\mo12\dy16\hr14\min16}{\printim\yr1999\mo3\dy17\hr16\min34}{\version5}{\edmins51}{\nofpages1}{\nofwords208}{\nofchars1188}{\*\company Dell Computer Corporation}{\nofcharsws0}{\vern113}}\paperw11906\paperh16838 
\widowctrl\ftnbj\aenddoc\hyphcaps0\formshade\viewkind1\viewscale100 \fet0\sectd \linex0\headery709\footery709\colsx709\endnhere\sectdefaultcl {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang
{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang
{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain 
\s1\qj\sb240\sa60\keepn\widctlpar\outlinelevel0\adjustright \b\f1\fs28\kerning28 {CHARCONV SNM files
\par }\pard\plain \qj\widctlpar\adjustright \fs20 {The acronym \ldblquote SNM\rdblquote  stands for \ldblquote Standard Names and MIB enums\rdblquote . SNM files provide the }{\f2 CCnvCharacterSet\-Converter}{ class\rquote  member functions }{\f2 Convert\-
StandardName\-Of\-CharacterSet\-To\-IdentifierL}{, }{\f2 Convert\-CharacterSet\-Identifier\-To\-StandardNameL}{, }{\f2 Convert\-MibEnum\-Of\-CharacterSet\-To\-IdentifierL}{ and }{\f2 Convert\-CharacterSet\-Identifier\-To\-MibEnumL}{
 with the information they require.
\par 
\par The information in an SNM file is a mapping between MIB enums and standard internet names and aliases for character sets.
\par }\pard\plain \s2\sb240\sa60\keepn\widctlpar\outlinelevel1\adjustright \b\i\f1 {How to use SNM files
\par }\pard\plain \qj\widctlpar\adjustright \fs20 {SNM files should be placed in the \\system\\charconv directory of any drive. This will allow CharConv to find them.
\par 
\par If there are multiple SNM files, the effect is the same as having one SNM file made out of all the original source files concatenated and converted as one. In other words, the rules that CharConv uses are the union of all the rules in all the SNM files.

\par 
\par Only BASIC.TXT in the CharConv/data/SNM directory is built by CharConv\rquote s makefiles. One way to get another SNM file built automatically would be to update BASIC_SNM.MK in the CharConv/group directory.
\par }\pard\plain \s2\sb240\sa60\keepn\widctlpar\outlinelevel1\adjustright \b\i\f1 {Creating SNM files
\par }\pard\plain \qj\widctlpar\adjustright \fs20 {SNM files are binary files generated by SNMTOOL from a text file called the }{\b source file}{.
\par 
\par SNMTOOL is called from the command-line as follows:
\par 
\par }{\b\f2 SNMTOOL }{\i\f2 <source-file> <output-binary-file>
\par }\pard\plain \s2\sb240\sa60\keepn\widctlpar\outlinelevel1\adjustright \b\i\f1 {Testing SNM files
\par }\pard\plain \qj\widctlpar\adjustright \fs20 {Code to test the generated SNM file can be based on some of CHARCONV\rquote s own test code, e.g. \\charconv\\test\\source\\main\\TBIG5.*.
\par }\pard\plain \s2\qj\sb240\sa60\keepn\widctlpar\outlinelevel1\adjustright \b\i\f1 {The format of the source file
\par }\pard\plain \qj\widctlpar\adjustright \fs20 {This text files is case insensitive and permits comments beginning with a \ldblquote #\rdblquote 
 character and extending to the end of the line. It also permits blank lines and leading and trailing white-space on non-blank lines.
\par 
\par The source file consists of zero, one or more }{\b blocks}{ where each block contains the necessary information about a particular character set. The first line of each block is as follows:
\par 
\par }{\b\f2 CharacterSet}{\f2  }{\b\f2 0x}{\i\f2 <UID-in-hexadecimal>}{\f2 
\par }{
\par The remainder of the block consists of zero, one or more lines, each of which is either in the format
\par 
\par }{\b\f2 StandardName }{\f2 "}{\i\f2 <standard-name>}{\f2 "}{\b\f2 
\par }{
\par or in the format
\par 
\par }{\b\f2 MibEnum }{\i\f2 <MIB-enum-in-decimal>
\par }{
\par There may be more than one MibEnum and more than one StandardName line in the file. All of the enums and names thus specified are considered equivalent.
\par 
\par }}