Four Js Genero Report Writer
libgreprops.h
Go to the documentation of this file.
1 /*
2  FOURJS_START_COPYRIGHT(D,1999)
3  Property of Four Js*
4  (c) Copyright Four Js 1999, 2018. All Rights Reserved.
5  * Trademark of Four Js Development Tools Europe Ltd
6  in the United States and elsewhere
7 
8  This file can be modified by licensees according to the
9  product manual.
10  FOURJS_END_COPYRIGHT
11 */
12 #ifndef _LIBGREPROPS_H
13 #define _LIBGREPROPS_H 1
14 
39 #ifdef _MSC_VER
40  #ifndef NAN
41  static const unsigned long __nan[2] = {0xffffffff, 0x7fffffff};
42  #define NAN (*(const float *) __nan)
43  #endif
44 #else
45  #include <math.h>
46 #endif
47 
48 enum IssueType {ERROR,WARNING,NO_ISSUE=-1};
49 enum boolean {FALSE,TRUE,BOOLEAN_NULL=-1};
50 
51 #define INT_NULL -1
52 #define FLOAT_NULL NAN
53 #define ENUM_NULL -1
54 
55 /*enums*/
56 enum autoformatTypeEnum {COMPATIBILITY,FLAT_LIST,NEW_LIST};
57 enum logicalPageMappingEnum {oneToOne,labels,multipage};
58 enum SVGCharsetToEmbedEnum {DEFAULT,ISO_8859_15,ALL};
59 enum BrowserFontFileFormatEnum {ttf,woff,eot};
60 enum RTFImagesFormatEnum {png,jpg};
61 enum outputDeviceEnum {PDF,XLS,XLSX,HTML,Image,Printer,Postscript,SVG,Browser,RTF,OORTF};
62 enum SVGPreviewTypeEnum {Preview,ShowPrintDialog,PrintOnDefaultPrinter,PrintOnNamedPrinter};
63 
64 
65 struct RuntimeConfiguration;
66 
67 typedef struct RuntimeConfiguration* RuntimeConfigurationPtr;
68 
69 RuntimeConfigurationPtr createRuntimeConfiguration(const char *reportFileName);
70 
71 void destroyRuntimeConfiguration(RuntimeConfigurationPtr rcPtr);
72 
73 char* getDistributedHost(RuntimeConfigurationPtr rcPtr);
74 
75 int getDistributedPort(RuntimeConfigurationPtr rcPtr);
76 
77 char* getOutputFileName(RuntimeConfigurationPtr rcPtr);
78 
79 char* getLastIssueMessage(RuntimeConfigurationPtr rcPtr);
80 
81 int getLastIssueNumber(RuntimeConfigurationPtr rcPtr);
82 
83 enum IssueType getLastIssueType(RuntimeConfigurationPtr rcPtr);
84 
85 static char *nstrdup(const char* s);
86 
99 void setXMLEncoding(RuntimeConfigurationPtr rcPtr,const char* xmlEncoding);
100 char* getXMLEncoding(RuntimeConfigurationPtr rcPtr);
101 
103 char* getPIAttributes(RuntimeConfigurationPtr rcPtr);
104 
118 void setProcessLevelDataFile(RuntimeConfigurationPtr rcPtr,const char* dataFileName);
119 
130 void setAutoformatType(RuntimeConfigurationPtr rcPtr,enum autoformatTypeEnum type);
131 
142 void setSharePortWithGDC(RuntimeConfigurationPtr rcPtr,enum boolean share);
143 
153 void setCallbackLocalization(RuntimeConfigurationPtr rcPtr,enum boolean value);
154 
174 void configureLocalization(RuntimeConfigurationPtr rcPtr,const char* charSet,const char* resourcePath,const char* numberFormat,const char* dateFormat);
175 
206 void selectLogicalPageMapping(RuntimeConfigurationPtr rcPtr,enum logicalPageMappingEnum mapping);
207 
240 void configureLabelOutput(RuntimeConfigurationPtr rcPtr,const char* paperWidth,const char* paperHeight,const char* labelWidth,const char* labelHeight,int labelsPerRow,int labelsPerColumn);
241 
277 void configureSVGDevice(RuntimeConfigurationPtr rcPtr,enum boolean antialiasFonts,enum boolean antialiasShapes,enum boolean embedFonts,enum SVGCharsetToEmbedEnum charsetToEmbed);
278 
293 void setSVGCompression(RuntimeConfigurationPtr rcPtr,enum boolean compressOutput);
294 
310 void setBrowserDocumentDirectory(RuntimeConfigurationPtr rcPtr,const char* directory);
311 
322 void setBrowserDocumentDirectoryURL(RuntimeConfigurationPtr rcPtr,const char* directory);
323 
340 void setBrowserFontDirectory(RuntimeConfigurationPtr rcPtr,const char* directory);
341 
352 void setBrowserFontDirectoryURL(RuntimeConfigurationPtr rcPtr,const char* directory);
353 
365 void setBrowserFontFileFormat(RuntimeConfigurationPtr rcPtr,enum BrowserFontFileFormatEnum format);
366 
410 void configureImageDevice(RuntimeConfigurationPtr rcPtr,enum boolean antialiasFonts,enum boolean antialiasShapes,enum boolean monochrome,int fromPage,int toPage,const char* fileType,const char* filePath,const char* fileNamePrefix,int resolution);
411 
428 void setImageUsePageNamesAsFileNames(RuntimeConfigurationPtr rcPtr,enum boolean value);
429 
441 void setImageShrinkImagesToPageContent(RuntimeConfigurationPtr rcPtr,enum boolean value);
442 
469 void configurePDFDevice(RuntimeConfigurationPtr rcPtr,const char* fontDirectory,enum boolean antialiasFonts,enum boolean antialiasShapes,enum boolean monochrome,int fromPage,int toPage);
470 
486 void configurePDFFontEmbedding(RuntimeConfigurationPtr rcPtr,enum boolean preferUnicodeEncoding);
487 
502 void setPDFJPEGImageEncoding(RuntimeConfigurationPtr rcPtr,enum boolean encodeImagesAsJPEG,float jpegQuality);
503 
514 void setPDFImageResolution(RuntimeConfigurationPtr rcPtr,int imagesResolution);
515 
553 void configureXLSDevice(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage,enum boolean removeWhitespace,enum boolean ignoreRowAlignment,enum boolean ignoreColumnAlignment,enum boolean removeBackgroundImages,enum boolean mergePages);
554 
566 void setXLSMergeCells(RuntimeConfigurationPtr rcPtr,enum boolean mergeCells);
567 
604 void configureXLSXDevice(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage,enum boolean removeWhitespace,enum boolean ignoreRowAlignment,enum boolean ignoreColumnAlignment,enum boolean removeBackgroundImages,enum boolean mergePages);
605 
617 void setXLSXMergeCells(RuntimeConfigurationPtr rcPtr,enum boolean mergeCells);
618 
666 void configureHTMLDevice(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage,enum boolean embedImages,const char* imageGenerationDirectory,const char* imageURLPrefix,enum boolean removeWhitespace,enum boolean ignoreRowAlignment,enum boolean ignoreColumnAlignment,enum boolean removeBackgroundImages);
667 
693 void configureRTFDevice(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage,int imagesResolution,enum RTFImagesFormatEnum imagesFormat);
694 
720 void configureOORTFDevice(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage,int imagesResolution,enum RTFImagesFormatEnum imagesFormat);
721 
736 void setRTFMemoryThreshold(RuntimeConfigurationPtr rcPtr,int memoryThreshold);
737 
772 void configureCompatibilityOutput(RuntimeConfigurationPtr rcPtr,int pageWidthInCharacters,const char* fontName,enum boolean fidelity,const char* reportName,const char* reportCategory,const char* systemId);
773 
803 void configureAutoformatOutput(RuntimeConfigurationPtr rcPtr,const char* fontName,int fontSize,enum boolean fidelity,const char* reportTitle,const char* fieldNamePatterns,const char* systemId);
804 
855 void configureCompatibilityOutput1(RuntimeConfigurationPtr rcPtr,int pageWidthInCharacters,const char* fontName,enum boolean fidelity,const char* reportName,const char* reportCategory,const char* systemId,enum boolean outputCompleteLines,enum boolean ignoreLeftMargin,enum boolean ignoreTopMargin);
856 
869 void configurePageSize(RuntimeConfigurationPtr rcPtr,const char* pageWidth,const char* pageHeight);
870 
883 void setTitle(RuntimeConfigurationPtr rcPtr,const char* title);
884 
896 void setAuthor(RuntimeConfigurationPtr rcPtr,const char* author);
897 
909 void setCreator(RuntimeConfigurationPtr rcPtr,const char* creator);
910 
922 void setSubject(RuntimeConfigurationPtr rcPtr,const char* subject);
923 
936 void setKeywords(RuntimeConfigurationPtr rcPtr,const char* keywords);
937 
952 void setOutputFileName(RuntimeConfigurationPtr rcPtr,const char* fileName);
953 
980 void setPageMargins(RuntimeConfigurationPtr rcPtr,const char* topMargin,const char* bottomMargin,const char* leftMargin,const char* rightMargin);
981 
991 void markOverfullBoxesInDocument(RuntimeConfigurationPtr rcPtr,enum boolean value);
992 
1005 void setPageSwappingThreshold(RuntimeConfigurationPtr rcPtr,int value);
1006 
1024 void setPaperMargins(RuntimeConfigurationPtr rcPtr,const char* topMargin,const char* bottomMargin,const char* leftMargin,const char* rightMargin);
1025 
1048 void configureMultipageOutput(RuntimeConfigurationPtr rcPtr,int pageExponent,int isoNumber,enum boolean portrait);
1049 
1118 void selectDevice(RuntimeConfigurationPtr rcPtr,enum outputDeviceEnum device);
1119 
1148 void configureSVGPreview(RuntimeConfigurationPtr rcPtr,enum SVGPreviewTypeEnum type);
1149 
1162 void setSVGPageRange(RuntimeConfigurationPtr rcPtr,int fromPage,int toPage);
1163 
1178 void setPrinterFidelity(RuntimeConfigurationPtr rcPtr,enum boolean fidelity);
1179 
1194 void setPrinterName(RuntimeConfigurationPtr rcPtr,const char* printerName);
1195 
1205 void setSVGPrinterName(RuntimeConfigurationPtr rcPtr,const char* printerName);
1206 
1221 void setPrinterChromaticity(RuntimeConfigurationPtr rcPtr,const char* chromaticity);
1222 
1251 void setPrinterMediaSizeName(RuntimeConfigurationPtr rcPtr,const char* mediaSizeName);
1252 
1267 void setPrinterMediaTray(RuntimeConfigurationPtr rcPtr,const char* mediaTray);
1268 
1281 void setSVGPaperSource(RuntimeConfigurationPtr rcPtr,const char* paperSource);
1282 
1299 void setPrinterMediaName(RuntimeConfigurationPtr rcPtr,const char* mediaName);
1300 
1313 void setPrinterJobSheets(RuntimeConfigurationPtr rcPtr,const char* jobSheets);
1314 
1331 void setPrinterOrientationRequested(RuntimeConfigurationPtr rcPtr,const char* orientationRequested);
1332 
1348 void setSVGOrientationRequested(RuntimeConfigurationPtr rcPtr,const char* orientationRequested);
1349 
1361 void setPrinterPrintQuality(RuntimeConfigurationPtr rcPtr,const char* printQuality);
1362 
1390 void setPrinterSheetCollate(RuntimeConfigurationPtr rcPtr,const char* sheetCollate);
1391 
1420 void setSVGSheetCollate(RuntimeConfigurationPtr rcPtr,const char* sheetCollate);
1421 
1433 void setPrinterCopies(RuntimeConfigurationPtr rcPtr,int copies);
1434 
1447 void setSVGCopies(RuntimeConfigurationPtr rcPtr,int copies);
1448 
1482 void setPrinterSides(RuntimeConfigurationPtr rcPtr,const char* sides);
1483 
1510 void setPrinterJobMediaSheets(RuntimeConfigurationPtr rcPtr,int jobMediaSheets);
1511 
1541 void setPrinterJobImpressions(RuntimeConfigurationPtr rcPtr,int jobImpressions);
1542 
1555 void setPrinterJobName(RuntimeConfigurationPtr rcPtr,const char* jobName);
1556 
1575 void setPrinterJobPriority(RuntimeConfigurationPtr rcPtr,int jobPriority);
1576 
1596 void setPrinterNumberUp(RuntimeConfigurationPtr rcPtr,int numberUp);
1597 
1612 void setPrinterPageRanges(RuntimeConfigurationPtr rcPtr,const char* pageRanges);
1613 
1632 void setPrinterResolution(RuntimeConfigurationPtr rcPtr,const char* resolution);
1633 
1659 void setPrinterRequestingUserName(RuntimeConfigurationPtr rcPtr,const char* requestingUserName);
1660 
1687 void setPrinterDestinationUrl(RuntimeConfigurationPtr rcPtr,const char* destination);
1688 
1705 void setPrinterWriteToFile(RuntimeConfigurationPtr rcPtr,const char* file);
1706 
1719 void configureDistributedProcessing(RuntimeConfigurationPtr rcPtr,const char* host,int port);
1720 
1738 void configureDistributedEnvironment(RuntimeConfigurationPtr rcPtr,const char* FGLDIR,const char* FGLPROFILE,const char* FGLRESOURCEPATH,const char* DBPATH);
1739 
1752 void setDistributedRequestingUserName(RuntimeConfigurationPtr rcPtr,const char* requestingUserName);
1753 
1763 void setEnvironment(RuntimeConfigurationPtr rcPtr,const char* values);
1764 
1774 void setRenderingHints(RuntimeConfigurationPtr rcPtr,const char* values);
1775 
1785 void setPrinterPJLVariables(RuntimeConfigurationPtr rcPtr,const char* values);
1786 
1787 #endif /* _LIBGREPROPS_H */
1788 
void setPrinterNumberUp(RuntimeConfigurationPtr rcPtr, int numberUp)
void setPrinterJobSheets(RuntimeConfigurationPtr rcPtr, const char *jobSheets)
void setSVGOrientationRequested(RuntimeConfigurationPtr rcPtr, const char *orientationRequested)
void setPrinterMediaName(RuntimeConfigurationPtr rcPtr, const char *mediaName)
void configureRTFDevice(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage, int imagesResolution, enum RTFImagesFormatEnum imagesFormat)
void setSharePortWithGDC(RuntimeConfigurationPtr rcPtr, enum boolean share)
void configureAutoformatOutput(RuntimeConfigurationPtr rcPtr, const char *fontName, int fontSize, enum boolean fidelity, const char *reportTitle, const char *fieldNamePatterns, const char *systemId)
void configureSVGPreview(RuntimeConfigurationPtr rcPtr, enum SVGPreviewTypeEnum type)
void setRenderingHints(RuntimeConfigurationPtr rcPtr, const char *values)
void setSVGCopies(RuntimeConfigurationPtr rcPtr, int copies)
void setBrowserDocumentDirectory(RuntimeConfigurationPtr rcPtr, const char *directory)
void setRTFMemoryThreshold(RuntimeConfigurationPtr rcPtr, int memoryThreshold)
void configurePageSize(RuntimeConfigurationPtr rcPtr, const char *pageWidth, const char *pageHeight)
void setPrinterMediaTray(RuntimeConfigurationPtr rcPtr, const char *mediaTray)
void setXLSXMergeCells(RuntimeConfigurationPtr rcPtr, enum boolean mergeCells)
void setDistributedRequestingUserName(RuntimeConfigurationPtr rcPtr, const char *requestingUserName)
void setPrinterResolution(RuntimeConfigurationPtr rcPtr, const char *resolution)
void configureDistributedProcessing(RuntimeConfigurationPtr rcPtr, const char *host, int port)
void configureOORTFDevice(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage, int imagesResolution, enum RTFImagesFormatEnum imagesFormat)
void configureLocalization(RuntimeConfigurationPtr rcPtr, const char *charSet, const char *resourcePath, const char *numberFormat, const char *dateFormat)
void configureSVGDevice(RuntimeConfigurationPtr rcPtr, enum boolean antialiasFonts, enum boolean antialiasShapes, enum boolean embedFonts, enum SVGCharsetToEmbedEnum charsetToEmbed)
void setPrinterName(RuntimeConfigurationPtr rcPtr, const char *printerName)
void setXLSMergeCells(RuntimeConfigurationPtr rcPtr, enum boolean mergeCells)
void setPaperMargins(RuntimeConfigurationPtr rcPtr, const char *topMargin, const char *bottomMargin, const char *leftMargin, const char *rightMargin)
void setBrowserDocumentDirectoryURL(RuntimeConfigurationPtr rcPtr, const char *directory)
void setPrinterJobPriority(RuntimeConfigurationPtr rcPtr, int jobPriority)
void setPrinterMediaSizeName(RuntimeConfigurationPtr rcPtr, const char *mediaSizeName)
void setPrinterJobName(RuntimeConfigurationPtr rcPtr, const char *jobName)
void setAuthor(RuntimeConfigurationPtr rcPtr, const char *author)
void configureCompatibilityOutput1(RuntimeConfigurationPtr rcPtr, int pageWidthInCharacters, const char *fontName, enum boolean fidelity, const char *reportName, const char *reportCategory, const char *systemId, enum boolean outputCompleteLines, enum boolean ignoreLeftMargin, enum boolean ignoreTopMargin)
void setPageSwappingThreshold(RuntimeConfigurationPtr rcPtr, int value)
void selectDevice(RuntimeConfigurationPtr rcPtr, enum outputDeviceEnum device)
void setPrinterRequestingUserName(RuntimeConfigurationPtr rcPtr, const char *requestingUserName)
void setSubject(RuntimeConfigurationPtr rcPtr, const char *subject)
void setSVGSheetCollate(RuntimeConfigurationPtr rcPtr, const char *sheetCollate)
void setCallbackLocalization(RuntimeConfigurationPtr rcPtr, enum boolean value)
void setKeywords(RuntimeConfigurationPtr rcPtr, const char *keywords)
void setXMLEncoding(RuntimeConfigurationPtr rcPtr, const char *xmlEncoding)
void setPrinterJobMediaSheets(RuntimeConfigurationPtr rcPtr, int jobMediaSheets)
void configurePDFFontEmbedding(RuntimeConfigurationPtr rcPtr, enum boolean preferUnicodeEncoding)
void setBrowserFontFileFormat(RuntimeConfigurationPtr rcPtr, enum BrowserFontFileFormatEnum format)
void setBrowserFontDirectory(RuntimeConfigurationPtr rcPtr, const char *directory)
void setPageMargins(RuntimeConfigurationPtr rcPtr, const char *topMargin, const char *bottomMargin, const char *leftMargin, const char *rightMargin)
void configureXLSDevice(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage, enum boolean removeWhitespace, enum boolean ignoreRowAlignment, enum boolean ignoreColumnAlignment, enum boolean removeBackgroundImages, enum boolean mergePages)
void setPrinterFidelity(RuntimeConfigurationPtr rcPtr, enum boolean fidelity)
char * getPIAttributes(RuntimeConfigurationPtr rcPtr)
void configureXLSXDevice(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage, enum boolean removeWhitespace, enum boolean ignoreRowAlignment, enum boolean ignoreColumnAlignment, enum boolean removeBackgroundImages, enum boolean mergePages)
void setSVGPrinterName(RuntimeConfigurationPtr rcPtr, const char *printerName)
void configureDistributedEnvironment(RuntimeConfigurationPtr rcPtr, const char *FGLDIR, const char *FGLPROFILE, const char *FGLRESOURCEPATH, const char *DBPATH)
void setBrowserFontDirectoryURL(RuntimeConfigurationPtr rcPtr, const char *directory)
void setEnvironment(RuntimeConfigurationPtr rcPtr, const char *values)
void configurePDFDevice(RuntimeConfigurationPtr rcPtr, const char *fontDirectory, enum boolean antialiasFonts, enum boolean antialiasShapes, enum boolean monochrome, int fromPage, int toPage)
void selectLogicalPageMapping(RuntimeConfigurationPtr rcPtr, enum logicalPageMappingEnum mapping)
void configureHTMLDevice(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage, enum boolean embedImages, const char *imageGenerationDirectory, const char *imageURLPrefix, enum boolean removeWhitespace, enum boolean ignoreRowAlignment, enum boolean ignoreColumnAlignment, enum boolean removeBackgroundImages)
void setPDFImageResolution(RuntimeConfigurationPtr rcPtr, int imagesResolution)
void setTitle(RuntimeConfigurationPtr rcPtr, const char *title)
void setAutoformatType(RuntimeConfigurationPtr rcPtr, enum autoformatTypeEnum type)
void setSVGPaperSource(RuntimeConfigurationPtr rcPtr, const char *paperSource)
void configureMultipageOutput(RuntimeConfigurationPtr rcPtr, int pageExponent, int isoNumber, enum boolean portrait)
void markOverfullBoxesInDocument(RuntimeConfigurationPtr rcPtr, enum boolean value)
void configureCompatibilityOutput(RuntimeConfigurationPtr rcPtr, int pageWidthInCharacters, const char *fontName, enum boolean fidelity, const char *reportName, const char *reportCategory, const char *systemId)
void configureImageDevice(RuntimeConfigurationPtr rcPtr, enum boolean antialiasFonts, enum boolean antialiasShapes, enum boolean monochrome, int fromPage, int toPage, const char *fileType, const char *filePath, const char *fileNamePrefix, int resolution)
void setImageUsePageNamesAsFileNames(RuntimeConfigurationPtr rcPtr, enum boolean value)
void setPrinterSheetCollate(RuntimeConfigurationPtr rcPtr, const char *sheetCollate)
void setPrinterDestinationUrl(RuntimeConfigurationPtr rcPtr, const char *destination)
void setImageShrinkImagesToPageContent(RuntimeConfigurationPtr rcPtr, enum boolean value)
void setPrinterChromaticity(RuntimeConfigurationPtr rcPtr, const char *chromaticity)
void setPrinterSides(RuntimeConfigurationPtr rcPtr, const char *sides)
void configureLabelOutput(RuntimeConfigurationPtr rcPtr, const char *paperWidth, const char *paperHeight, const char *labelWidth, const char *labelHeight, int labelsPerRow, int labelsPerColumn)
void setProcessLevelDataFile(RuntimeConfigurationPtr rcPtr, const char *dataFileName)
void setPrinterJobImpressions(RuntimeConfigurationPtr rcPtr, int jobImpressions)
void setPDFJPEGImageEncoding(RuntimeConfigurationPtr rcPtr, enum boolean encodeImagesAsJPEG, float jpegQuality)
void setPrinterWriteToFile(RuntimeConfigurationPtr rcPtr, const char *file)
void setPrinterOrientationRequested(RuntimeConfigurationPtr rcPtr, const char *orientationRequested)
void setPrinterPageRanges(RuntimeConfigurationPtr rcPtr, const char *pageRanges)
void setOutputFileName(RuntimeConfigurationPtr rcPtr, const char *fileName)
void setSVGPageRange(RuntimeConfigurationPtr rcPtr, int fromPage, int toPage)
void setSVGCompression(RuntimeConfigurationPtr rcPtr, enum boolean compressOutput)
void setCreator(RuntimeConfigurationPtr rcPtr, const char *creator)
void setPrinterPrintQuality(RuntimeConfigurationPtr rcPtr, const char *printQuality)
void setPrinterCopies(RuntimeConfigurationPtr rcPtr, int copies)
void setPrinterPJLVariables(RuntimeConfigurationPtr rcPtr, const char *values)