(v13) File structure
This page applies to Harlequin v13.1r0 and later; and to Harlequin Core but not Harlequin MultiRIP.
The Harlequin Core SDK file structure allows various products to be packaged together which can run on a number of operating systems, and can include a number of types of these products.
The folder into which the Harlequin Core SDK has been installed is referred to in this section as the "top-level install folder". Note that, once installed, the location of the various elements should not be changed. If you do need to change the location you must uninstall then perform a re-install.
The installation of the product uses the following file structure:
- Top level install folder
This is where you will find a Microsoft VS project file clrip.vcxproj and accompanying head file options.h. For more information about using these see (v13) Building the HHR RIP from within the VS project. - lib/interface
Contains the collected header files for all of the GG source components provided by or required by the SDK's corelib library. These include API header files for control, memory management, devices, screening, threading, data access, RDR, events, timers, timelines, input queues, color management, monitor output, barcodes, and some common data structures and algorithms. - lib/htmeg
Contains the Screening (Halftone) module example. For more information see API Reference Manual . This is not required for a minimal RIP build. - bin/
This is where you will find core RIP shared library and the Makefile. For more information about using the Makefile, see (v13) Building the HHR RIP from within the VS project. Also included is imptool.exe which is an executable used for creating a SW folder in RAM, and machinetype.exe a tool for checking the machine type of a target binary file. - bin.minrip/
Is a minimal integration example that shows the absolute minimum set of calls and callbacks that must be implemented in order to use the HHR SDK. It demonstrates the parts of skinkit, skintest, and associated code that are required. - doc/
This is where you will find the relevant documentation. The documentation is provided in the form of HTML .chm help files. - Uninstall_Harlequin Core SDK X.XrX/
This folder contains the uninstaller software. See (v13) How to remove the Harlequin Core SDK Windows for more information. - lib/cmmeg
Contains the Color Management Module API example client. For more information see API Reference Manual . This is not required for a minimal RIP build. - lib/liblittlecms
Contains the little CMS library, which is used by the cmm example, and is not needed in a minimal RIP build. - lib/libtiff
This is used by the TIFF raster example, and is not needed by a minimal build. - lib/rdrevent
Contains the sources for the RDR and Events system. For more information see the API Reference Manual . - lib/pthreads
Contains the POSIX Threads Library. This is only needed for Windows RIPs. Linux and macOS have pthreads built into the operating system. - lib/threads
This is a wrapper API over pthreads that Global Graphics use to allow the linking of skin and core to the same library version. It also provides extra functions that are use useful when using pthreads. - lib/timeline
Contains the Timeline API, which is used to manage, communicate, and negotiate the lifespan of entities; arrange timelines into hierarchies; report state, progress along and extent of timelines; and attribute textual feedback and error messages to timeline hierarchies. For more information see API Reference Manual . - lib/timer
Contains the functions to start and end the timed callback system and the definitions of the timed callback API versions. For more information see API Reference Manual. - lib/zlib
Contains the interface and configuration of the “zlib” general purpose compression library. - lib/allskins
Shared SDK code for HHR, Harlequin Embedded, and Harlequin Multi-RIP skins. - lib/libjpeg
A fast JPEG decoder integration. - lib/libjpeg-turbo
An even faster JPEG decoder integration, using SSE operations (for x86 and amd64 architectures only). - lib/libbarcodezint
A wrapper for the Zint barcode generation library, enabling its use for barcode generation. This API is incomplete, and is for internal Global Graphics use only at the moment. The PostScript barcode operators may be used as documented in Harlequin 12.0, but the API should not be accessed directly. - lib/libzint
The Zint barcode generation library, used by the PostScript barcode operator. - lib/ncapi
An implementation of the Named Color Editing API. For more information see the API Reference Manual . - lib/skinkit
Contains the service layer called “Skinkit” already interfaced with the core. The directory skinkit contains source code to the service layer, which provides a more useful API to use in your host application. The interface to this layer is defined in lib/skinkit/export/skinkit.h and lib/skinkit/export/skinras.h. - lib/skinmin
The source code for a very minimal RIP integration, using the skinkit SDK layer. This integration is solely to show the minimum amount of work required to compile a RIP. It is not a production-capable RIP integration. - lib/skintest
Contains a platform dependent example RIP application called “Skintest”, which you can use to test your system.
And for the Scalable RIP:
- lib/ripfarm
This directory contains header files for the APIs and libraries used by the Harlequin Scalable RIP: - lib/ripfarm/interface
Header files for the libripfarm library, used when integrating the Harlequin Scalable RIP into your product. - lib/ripfarm/libargtable
Theargtable2
command-line parser, used by the Harlequin Scalable RIP ripfarmtesttool example code. - lib/ripfarm/libczmq
The CZMQ library, used by the Harlequin Scalable RIP to provide higher-level abstractions for the ZeroMQ messaging system in C and C++. - lib/ripfarm/libzeromq
The ZeroMQ messaging system library., - lib/ripfarm/libjansson
The Jansson JSON parser, used by the Harlequin Scalable RIP for message passing between components. - lib/ripfarm/ripfarmtesttool
The source code for the Harlequin Scalable RIP example test tool, which uses the libripfarm library to provide a command-driven interface to the Harlequin Scalable RIP. - bin.ripfarmtesttool
The Makefile and pre-built binary for the Harlequin Scalable RIP's example test tool. The source code for this tool (in lib/ripfarm/ripfarmtesttool) demonstrates how to load, configure, and use the libripfarm library to integrate the Harlequin Scalable RIP into your application. tools
This directory contains pre-built executables for the Harlequin Scalable RIP's diagnostics tool and raster test tool. For information see (v13) The Harlequin Scalable RIP.See (v13) The functions and callback functions for more information.