B C/C++ Client Data Types
All options discussed in this chapter are described in detail in the Options documentation.
B.1 Simple Types
-
XSD_booleanL Binary data (true [non-zero] or false [0])
-
XSD_byte: Short data between -128 and 127
-
XSD_double: IEEE double-precision 64-bit floating point data
-
XSD_float: IEEE single-precision 32-bit floating point data
-
XSD_int: Long data between -2147483648 and 2147483647
-
XSD_short: Integer data between -32768 and 32767
-
XSD_signedInt: Integer data between -2147483648 and 2147483647
-
XSD_string: A null-terminated character string
-
XSD_unsignedByte: Unsigned, short data no greater than 255
-
XSD_unsignedInt: Unsigned, long data no greater than 4294967295
-
XSD_unsignedShort: Unsigned, short data no greater than 65535
B.2 Complex Types
Complex types are listed by product:
B.2.1 All Export Products
This section discusses information that is pertinent for all products.
B.2.1.1 TS_binaryData
Binary data. This data type takes the form of a structure, defined as follows:
typedef struct TS_binaryData { XSD_unsignedByte * pData; XSD_unisginedInt size; } TS_binaryData;
-
pData: Pointer to a buffer of bytes containing binary data
-
size: The size of the data pointed to by pData
B.2.1.3 TS_IOSpec
This data type is a structure that contains the full specification required for Transformation Server to open a particular data stream for input or output. In addition to a "specification," examples of which include a file system path or a URL, the structure also provides fields for the character set used in the specification and an identifier of the type of specification provided, for example, path or url. The TS_IOSpec structure is defined as follows:
typedef struct TS_IOSpec { TS_stringData spec; XSD_string specType; } TS_IOSpec;
-
spec: The string containing the specification and the character set of that string
-
specType: An identifier of the type of specification provided (path, url, or other type)
B.2.1.4 TS_OutputList
This data type is a structure that is used by the TS_TransformResult data type. It contains a list of ID specs for Transformation Server output. The data type takes the form of a structure, defined as follows:
typedef struct TS_OutputList { TS_IOSpec * documents; /* array of output document specifications */ XSD_unsignedInt size; /* size of array */ } TS_OutputList;
B.2.1.5 TS_stringArray
The TS_StringArray is used with the fileAccess option. It is an array of UTF-8 strings.
typedef struct TS_stringArray { XSD_string **strings; /* array of strings */ XSD_unsignedInt size; } TS_stringArray;
B.2.1.6 TS_stringData
This data type stores a text string along with an identifier of the character set used in the string.
Make sure that the charset field correctly identifies the character set used in the str field. For a list of available character sets, see TS_CharacterSetEnum. Note that unlike the SOAP API, the C API does not require or support strings that have been base64-encoded for transmission.
It takes the form of a data structure, defined as follows:
typedef struct TS_stringData { TS_char* str; TS_CharacterSetEnum charset; } TS_stringData;
-
str: A text string
-
charset: An identifier of the character set used in the string stored in str
B.2.1.7 TS_TransformResult
This data type is a structure that contains a human-readable result message and a list of the output documents created by the transformation. The structure is defined as follows:
typedef struct TS_TransformResult { TSERR resultCode; /* numeric result code defined in TSERR.H */ TS_stringData resultString; /* result message; may be empty */ TS_OutputList outputList; /* list of output documents */ } TS_TransformResult;
B.2.2 HTML Export
The information in this section is pertinent for HTML Export only.
B.2.2.1 OIT_AltLink
Valid for the altlink option. It takes the form of a data structure, defined as follows:
typedef struct OIT_AltLink { XSD_string prev; XSD_string next; } OIT_AltLink;
B.2.2.2 OIT_DefaultFont
Valid for the SCCIDOPT_DEFAULTPRINTFONTdefaultFont option. The structure is defined as follows:
typedef struct OIT_DefaultFont { TS_char* fontName; /* UTF-8 string */ XSD_unsignedShort height; // Currently the wAttr value of defaultprintfont is // ignored, so we don't need to either store it or set it. } OIT_DefaultFont;
B.2.3 Search Export
This information is valid for Search Export only.
B.2.3.1 OIT_CharacterAttributes
This data type has been deprecated. The flags contained in it are now standalone XSD_boolean options.
typedef struct OIT_CharacterAttributes { XSD_boolean bold; XSD_boolean italic; XSD_boolean underline; XSD_boolean doubleUnderline; XSD_boolean outline; XSD_boolean strikeout; XSD_boolean smallCaps; XSD_boolean allCaps; XSD_boolean hidden; } OIT_CharacterAttributes;
B.2.3.2 OIT_ParagraphAttributes
Valid for the SparagraphAttributes option. The structure is defined as follows:
typedef struct OIT_ParagraphAttributes { XSD_boolean spacing; XSD_boolean height; XSD_boolean leftIndent; XSD_boolean rightIndent; XSD_boolean firstIndent; } OIT_ParagraphAttributes;
B.2.3.3 OIT_SearchMLFlags
This data type has been deprecated. The flags contained in it are now standalone XSD_boolean options.
typedef struct OIT_SearchMLFlags { XSD_boolean paragraphStyleNamesOn; XSD_boolean embeddingsOn; XSD_boolean xmlDeclarationOff; XSD_boolean documentPropertiesOn; XSD_boolean changeNumberToTextOn; XSD_boolean suppressAttachments; XSD_boolean suppressArchiveSubdocs; } OIT_SearchMLFlags;
B.2.4 Image Export
This information is valid for Image Export only.
B.2.4.1 OIT_DefaultFont
Valid for the defaultFont option. The structure is defined as follows:
typedef struct OIT_DefaultFont { TS_char* fontName; /* UTF-8 string */ XSD_unsignedShort height; // Currently the wAttr value of defaultprintfont is // ignored, so we don't need to either store it or set it. } OIT_DefaultFont;
B.2.4.2 OIT_DefaultMargins
Valid for the defaultMargins option. It takes the form of a data structure, defined as follows:
typedef struct OIT_DefaultMargins { XSD_unsignedInt top; XSD_unsignedInt bottom; XSD_unsignedInt left; XSD_unsignedInt right; } OIT_DefaultMargins;
B.2.4.3 OIT_TiffOptions
Valid for the tiffOptions option. The structure is defined as follows:
typedef struct OIT_TiffOptions { OIT_TiffColorSpaceEnum colorSpace; OIT_TiffCompressionEnum compression; OIT_TiffByteOrderEnum byteOrder; OIT_TiffFillOrderEnum fillOrder; XSD_boolean createOneFile; } OIT_TiffOptions;
B.3 Enumerations
Complex types are listed by product:
B.3.1 All Export Products
This information is valid for all products.
B.3.1.1 OIT_DefaultInputCharSetEnum
Valid for the defaultInputCharset option. The enumeration is defined as follows:
typedef enum OIT_DefaultInputCharSetEnum { oit_jis = 145, oit_euc_jp, oit_cns11643_1, oit_euc_cns_1, oit_cns11643_2, oit_euc_cns_2, oit_ksc1987, oit_gb2312, oit_ebcdic37, oit_ebcdic273, oit_ebcdic274, oit_ebcdic277, oit_ebcdic278, oit_ebcdic280, oit_ebcdic282, oit_ebcdic284, oit_ebcdic285, oit_ebcdic297, oit_ebcdic500, oit_ebcdic1026, oit_ansi437, oit_ansi737, oit_ansi850, oit_ansi852, oit_ansi855, oit_ansi857, oit_ansi860, oit_ansi861, oit_ansi863, oit_ansi865, oit_ansi866, oit_ansi869, oit_ansi874, oit_ansi932, oit_ansi936, oit_ansi949, oit_ansi950, oit_ansi1250, oit_ansi1251, oit_ansi1252, oit_ansi1253, oit_ansi1254, oit_ansi1255, oit_ansi1256, oit_ansi1257, oit_iso8859_1, oit_iso8859_2, oit_iso8859_3, oit_iso8859_4, oit_iso8859_5, oit_iso8859_6, oit_iso8859_7, oit_iso8859_8, oit_iso8859_9, oit_macroman, oit_macromancroatian, oit_macromanromanian, oit_macromanturkish, oit_macromanicelandic, oit_maccyrillic, oit_macgreek, oit_maclatin2, oit_hebrew, oit_arabic, oit_macjis, oit_hproman8, oit_bidi_oldcode, oit_bidi_pc8, oit_bidi_e0, oit_htmlkoi8, oit_jis_roman, } OIT_DefaultInputCharSetEnum;
B.3.1.2 OIT_FallbackFormatEnum
Valid for the fallbackFormat option. The enumeration is defined as follows:
typedef enum OIT_FallbackFormatEnum { oit_ANSI_7, oit_ANSI_8, oit_ASCII_7, oit_ASCII_8, oit_Big5, oit_EUC_KR, oit_EUC_JP, oit_GB2312, oit_hebrew_old_code, oit_ISO_2022_JP, oit_ISO_8859_2, oit_ISO_8859_6, oit_ISO_10646_UCS_2, oit_KOI8_R, oit_Shift_JIS, oit_UTF_7 oit_UTF_8 oit_windows_874, oit_windows_1250, oit_windows_1251, oit_windows_1252, oit_windows_1253, oit_windows_1254, oit_windows_1255, oit_windows_1256, oit_windows_1257, oit_x_Mac_roman_7, oit_x_Mac_roman, oit_noFallbackFormat } OIT_FallbackFormatEnum;
B.3.2 HTML Export
This information is valid for HTML Export only.
B.3.2.1 OIT_CharacterByteOrderEnum
Valid for the characterByteOrder option. The enumeration is defined as follows:
typedef enum OIT_CharacterByteOrderEnum { oit_big_endian, oit_little_endian, oit_template_order } OIT_CharacterByteOrderEnum;
B.3.2.2 OIT_ComplianceEnum
Valid for the compliance option. The enumeration is defined as follows:
typedef enum OIT_ComplianceEnum { oit_none, oit_well_formed, oit_strictDTD } OIT_ComplianceEnum;
B.3.2.3 OIT_EmailHeaderOutputEnum
Valid for the emailHeaderOutput option. The enumeration is defined as follows:
typedef enum OIT_EmailHeaderOutputEnum { oit_emailHeaderStandard, oit_emailHeaderAll oit_emailHeaderNone } OIT_EmailHeaderOutputEnum;
B.3.2.4 OIT_ExtractEmbeddedFilesEnum
Valid for the extractEmbeddedFiles option. The enumeration is defined as follows:
typedef enum OIT_ExtractEmbeddedFilesEnum { oit_ignoreFiles, oit_convertFiles, oit_extractFiles, } OIT_ExtractEmbeddedFilesEnum;
B.3.2.5 OIT_FlavorEnum
Valid for the flavor option. The enumeration is defined as follows:
typedef enum OIT_FlavorEnum { oit_generic_html, oit_generic_wireless_html, oit_html2_0, oit_html3_0, oit_html4_0, oit_netscape3_0, oit_netscape4_0, oit_internetExplorer3_0, oit_internetExplorer4_0, oit_avantGo3_3_palm, oit_avantGo3_3_palm_noTables, oit_avantGo3_3_winCE, oit_avantGo3_3_winCE_noTables, oit_webClipping1_1, oit_webClipping1_1_noTables, oit_chtml2_0, oit_hdml3_0, oit_text, oit_wml1_1, oit_wml1_1_withTables, oit_wml2_0, oit_xhtml_basic1_0, oit_xhtml_basic1_0_noTables } OIT_FlavorEnum;
B.3.2.6 OIT_GraphicSizeMethodEnum
Valid for the graphicSizeMethod option. The enumeration is defined as follows:
typedef enum OIT_GraphicSizeMethodEnum { oit_smooth, oit_quick, oit_smoothGray } OIT_GraphicSizeMethodEnum;
B.3.2.7 OIT_GraphicTypeEnum
Valid for the graphicType option. The enumeration is defined as follows:
typedef enum OIT_GraphicTypeEnum { oit_bmp, oit_gif, oit_jpeg, oit_noGraphics, oit_png, oit_wbmp } OIT_GraphicTypeEnum;
B.3.2.8 OIT_GridAdvanceEnum
Valid for the gridAdvance option. The enumeration is defined as follows:
typedef enum OIT_GridAdvanceEnum { oit_advanceAcross, oit_advanceDown } OIT_GridAdvanceEnum;
B.3.2.9 OIT_ReorderMethodEnum
Valid for the reorderMethod option. The enumeration is defined as follows:
typedef enum OIT_ReorderMethodEnum { oit_reorderOff = oit_emailHeaderAll +1, oit_reorderLeftToRight, oit_reorderRightToLeft } OIT_ReorderMethodEnum;
B.3.2.10 OIT_SpreadSheetBordersEnum
Valid for the spreadsheetBorders option. The enumeration is defined as follows:
typedef enum OIT_SpreadsheetBordersEnum { oit_createBorderIfMissing, oit_bordersOff, oit_useSourceBorders } OIT_SpreadsheetBordersEnum;
B.3.2.11 TS_CharacterSetEnum
Valid for the outputCharacterSet option. The enumeration is defined as follows:
typedef enum TS_CharacterSetEnum { ts_ISO_8859_1 = 0x00080101, ts_ISO_8859_2 = 0x00080102, ts_ISO_8859_3 = 0x00080103, ts_ISO_8859_4 = 0x00080104, ts_ISO_8859_5 = 0x00080105, ts_ISO_8859_6 = 0x00080106, ts_ISO_8859_7 = 0x00080107, ts_ISO_8859_8 = 0x00080108, ts_ISO_8859_9 = 0x00080109, ts_x_Mac_roman = 0x80000100, ts_x_Mac_ce = 0x80070100, ts_x_Mac_Greek = 0x80060100, ts_x_Mac_Cyrillic = 0x80050100, ts_x_Mac_Turkish = 0x80030100, ts_GB2312 = 0x0f050000, ts_Big5 = 0x13b60000, ts_Shift_JIS = 0x13a40000, ts_KOI8_R = 0x000a0101, ts_windows_1250 = 0x14e20100, ts_windows_1251 = 0x14e30100, ts_windows_1252 = 0x14e40100, ts_windows_1253 = 0x14e50100, ts_windows_1254 = 0x14e60100, ts_windows_1255 = 0x14e70100, ts_windows_1256 = 0x14e80100, ts_windows_1257 = 0x14e90100, ts_EUC_KR = 0x13b50000, ts_EUC_JP = 0x0f0d0000, ts_ISO_2022_JP = 0x0f0c0000, ts_windows_874 = 0x136a0100, ts_UTF_7 = 0x000b000b, ts_UTF_8 = 0x000b000b, ts_ISO_10646_UCS_2 = 0x14b00000, ts_x_Charset_Unknown = 0 };
B.3.3 Search Export
This information is valid for Search Export only.
B.3.3.1 OIT_OleEmbeddingsEnum
Valid for the oleEmbeddings option. The enumeration is defined as follows:
typedef enum OIT_OleEmbeddingsEnum { oit_processStandard, /* Process embeddings that are known standard embeddings*/ oit_processAll, /* Process all embeddings in the file */ oit_processNone /* Process none of the embeddings in the file */ } OIT_ProcessOleEmbeddingsEnum;
B.3.4 Image Export
This information is valid for Image Export only.
B.3.4.1 OIT_DatabaseFitToPageEnum
Valid for the databaseFitToPage option. The enumeration is defined as follows:
typedef enum OIT_DatabaseFitToPageEnum { oit_dbNoScaling, oit_dbFitToPage, oit_dbFitToWidth, oit_dbFitToHeight, } OIT_DatabaseFitToPageEnum;
B.3.4.2 OIT_EmailHeaderOutputEnum
Valid for the emailHeaderOutput option. The enumeration is defined as follows:
typedef enum OIT_EmailHeaderOutputEnum { oit_emailHeaderStandard, oit_emailHeaderAll oit_emailHeaderNone } OIT_EmailHeaderOutputEnum;
B.3.4.3 OIT_GraphicCroppingEnum
Valid for the graphicCropping option. The enumeration is defined as follows:
typedef enum OIT_GraphicCroppingEnum { oit_noCropping, oit_cropToContent } OIT_GraphicCroppingEnum;
B.3.4.4 OIT_GraphicSizeMethodEnum
Valid for the graphicSizeMethod option. The enumeration is defined as follows:
typedef enum OIT_GraphicSizeMethodEnum { oit_smooth, oit_quick, oit_smoothGray } OIT_GraphicSizeMethodEnum;
B.3.4.5 OIT_GraphicWatermarkScaleTypeEnum
Valid for the graphicWatermarkScaleType option. The enumeration is defined as follows:
typedef enum OIT_GraphicWatermarkScaleTypeEnum { oit_scaleWatermarkOff, oit_scaleWatermarkByPercent } OIT_GraphicWatermarkScaleTypeEnum;
B.3.4.6 OIT_MimeHeaderOutputEnum
Valid for the mimeHeaderOutput option. The enumeration is defined as follows:
typedef enum OIT_MimeHeaderOutputEnum { oit_all, oit_standard, } OIT_MimeHeaderOutputEnum
B.3.4.7 OIT_ReorderMethodEnum
Valid for the reorderMethod option. The enumeration is defined as follows:
typedef enum OIT_ReorderMethodEnum { oit_reorderOff = oit_emailHeaderAll +1, oit_reorderLeftToRight, oit_reorderRightToLeft } OIT_ReorderMethodEnum;
B.3.4.8 OIT_SpreadsheetFitToPageEnum
Valid for the EspreadsheetFitToPage option. The enumeration is defined as follows:
typedef enum OIT_SpreadsheetFitToPageEnum { oit_ssNoScaling, oit_ssFitToPage, oit_ssFitToWidth, oit_ssFitToHeight, oit_ssScaleByPercentage, oit_ssFitToPages } OIT_SpreadsheetFitToPageEnum;
B.3.4.9 OIT_SpreadsheetPageDirectionEnum
Valid for the spreadsheetPageDirection option. The enumeration is defined as follows:
typedef enum OIT_SpreadsheetPageDirectionEnum { oit_downThenAcross, oit_acrossThenDown } OIT_SpreadsheetPageDirectionEnum;
B.3.4.10 OIT_TiffByteOrderEnum
Part of the OIT_TiffOptions structure. The enumeration is defined as follows:
typedef enum OIT_TiffByteOrderEnum { oit_tiff_little_endian, oit_tiff_big_endian } OIT_TiffByteOrderEnum;
B.3.4.11 OIT_TiffColorSpaceEnum
Part of the OIT_TiffOptions structure. The enumeration is defined as follows:
typedef enum OIT_TiffColorSpaceEnum { oit_1Bit, oit_8Bit, oit_24Bit } OIT_TiffColorSpaceEnum;
B.3.5 PDF Export
This information is valid for PDF Export only.
B.3.5.1 OIT_DefaultPageUnitsEnum
Valid for the defaultPageUnits option. The enumeration is defined as follows:
typedef enum OIT_DefaultPageUnitsEnum { oit_inches, oit_points, oit_centimeters, oit_picas, } OIT_DefaultPageUnitsEnum;
B.3.5.2 OIT_EmailHeaderOutputEnum
Valid for the emailHeaderOutput option. The enumeration is defined as follows:
typedef enum OIT_EmailHeaderOutputEnum { oit_emailHeaderStandard, oit_emailHeaderAll oit_emailHeaderNone } OIT_EmailHeaderOutputEnum;
B.3.5.3 OIT_ReorderMethodEnum
Valid for the reorderMethod option. The enumeration is defined as follows:
typedef enum OIT_ReorderMethodEnum { oit_reorderOff = oit_emailHeaderAll +1, oit_reorderLeftToRight, oit_reorderRightToLeft } OIT_ReorderMethodEnum;
B.3.6 XML Export
This information is valid for XML Export only.
B.3.6.1 OIT_GraphicSizeMethodEnum
Valid for the graphicSizeMethod option. The enumeration is defined as follows:
typedef enum OIT_GraphicSizeMethodEnum { oit_smooth, oit_quick, oit_smoothGray } OIT_GraphicSizeMethodEnum;
B.3.6.2 OIT_GraphicTypeEnum
Valid for the graphicType option. The enumeration is defined as follows:
typedef enum OIT_GraphicTypeEnum { oit_bmp, oit_gif, oit_jpeg, oit_noGraphics, oit_png, oit_wbmp } OIT_GraphicTypeEnum;
B.3.6.3 OIT_OleEmbeddingsEnum
Valid for the oleEmbeddings option. The enumeration is defined as follows:
typedef enum OIT_OleEmbeddingsEnum { oit_processStandard, /* Process embeddings that are known standard embeddings*/ oit_processAll, /* Process all embeddings in the file */ oit_processNone /* Process none of the embeddings in the file */ } OIT_ProcessOleEmbeddingsEnum;