Harlequin RIP SDK
Harlequin Core Timelines

Core RIP timelines. More...

Enumerations

enum  {
  SWTLT_CORE = (TL_CORE + ( 0 )) , SWTLT_FILE_INTERPRET = (TL_CORE + ( 1 )) , SWTLT_JOB_STREAM = (TL_CORE + ( 2 )) , SWTLT_JOB_CONFIG = (TL_CORE + ( 3 )) ,
  SWTLT_JOB = (TL_CORE + ( 4 )) , SWTLT_INTERPRET_PAGE = (TL_CORE + ( 5 )) , SWTLT_SCANNING_PAGES = (TL_CORE + ( 7 )) , SWTLT_HALFTONE_CACHING = (TL_CORE + ( 9 )) ,
  SWTLT_TRAP_PREPARATION = (TL_CORE + ( 11 )) , SWTLT_TRAP_GENERATION = (TL_CORE + ( 12 )) , SWTLT_RENDER_PREPARE = (TL_CORE + ( 14 )) , SWTLT_COMPOSITE_PAGE = (TL_CORE + ( 15 )) ,
  SWTLT_RENDER_PAGE = (TL_CORE + ( 16 )) , SWTLT_RENDER_PARTIAL = (TL_CORE + ( 17 )) , SWTLT_RENDER_SEPARATION = (TL_CORE + ( 18 )) , SWTLT_PGB = (TL_CORE + ( 19 )) ,
  SWTLT_PRESCANNING_PAGES = (TL_CORE + ( 20 )) , SWTLT_POSTSCANNING_PAGES = (TL_CORE + ( 21 )) , SWTLT_RENDER_CACHE = (TL_CORE + ( 22 )) , SWTLT_PRECONVERT_PAGE = (TL_CORE + ( 23 )) ,
  SWTLT_CORE_READY = (TL_CORE + ( 24 )) , TL_CORE_END
}
 Core timeline types. More...
 

Detailed Description

Core RIP timelines.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Core timeline types.

These are timelines made publically available by the RIP core for observation by other layers.

These are used as indices in the core, so we keep the range tight. However, they are part of the core interface, so the numbering may not be changed.

Enumerator
SWTLT_CORE 

A core RIP instance. This is an ancestor timeline of all other Core RIP timelines. If a skin timeline is passed to the Core RIP SwStart() using the SWTimelineParentTag, then it will be used as the parent of this timeline. Progress is measured in jobs, using the job number for progress updates. The job number may not increase for a font query or similar job that does not produce output, and it also may be set out of order using setpagedevice.

SWTLT_FILE_INTERPRET 

Reading a file. The title of the timeline is set to the file name. Progress is measured in bytes, indicating whereabouts in the file the RIP is reading from. If the length of the file is known, the extent will be set when the timeline is started. Progress reflects the location in the file that the RIP is reading, and may not increase monotonically. Not all file interpretations record progress, only the most active timelines. File timeline progress updates will only be produced in response to a SWEVT_PROGRESS_UPDATE event.

SWTLT_JOB_STREAM 

A job stream. Child of SWTLT_CORE, representing the entire stream of data submitted from this skin. This stream contains configuration and job data stages within it, represented by SWTLT_JOB_CONFIG and SWTLT_JOB timelines respectively. The SWEVT_INTERRUPT_USER and SWEVT_INTERRUPT_TIMEOUT events may refer to this timeline or any of its children to interrupt a specific job.

SWTLT_JOB_CONFIG 

Job configuration. Child of SWTLT_JOB_STREAM, representing the portion of a job where the configuration is run. The title of this timeline is the job name, in the core RIP format. There is no progress recorded on this timeline.

SWTLT_JOB 

A running job. Child of SWTLT_JOB_STREAM, representing the portion of a job where the job data supplied by the skin is interpreted. The title of this timeline is the job name, in the core RIP format. Progress is measured in pages, and is updated at the end of interpreting each page and also at the end of the job stream. The extent of the timeline is indeterminate.

SWTLT_INTERPRET_PAGE 

The interpretation stage of each page. Because of the way the Harlequin core initiates job interpretation, this is not a child of SWTLT_JOB, and may in fact start before the job, or end after the job. For each page in a job, there will be a SWTLT_INTERPRET_PAGE timeline, possibly followed by a SWTLT_RENDER_PAGE timeline. The SWTLT_INTERPRET_PAGE timeline is ended immediately before rendering the page, and a new SWTLT_INTERPRET_PAGE timeline is started after initiating rendering of the page. This new timeline is initiated before the RIP knows if the job is complete. If the SWTLT_INTERPRET_PAGE timeline is aborted, there is either an error, or there is no content and there will be no page rendered. There is no progress recorded on this timeline. The contexts attached to the SWTLT_INTERPRET_PAGE and SWTLT_RENDER_PAGE timelines are an integer indicating the page number.

SWTLT_SCANNING_PAGES 

HVD analyzing pages. Progress is measured in pages, and the extent is set to the number of pages to be analyzed. This phase happens after the SWTLT_PRESCANNING_PAGES phase, and before the SWTLT_POSTSCANNING_PAGES phase.

SWTLT_HALFTONE_CACHING 

Pre-generating halftone tiles for screening. Progress is measured in bytes with a known extent (the tile size). Progress updates will only be produced in response to a SWEVT_PROGRESS_UPDATE event.

SWTLT_TRAP_PREPARATION 

Preparing for trapping. Progress is measured as count with a known extent, in indeterminate units.

SWTLT_TRAP_GENERATION 

Generating trapped objects. Progress is measured as count with a known extent, in indeterminate units.

SWTLT_RENDER_PREPARE 

The rendering preparation stage. If the RIP needs a separate pass to composite transparent regions of the page, this timeline indicates the time spent converting object colors for non-transparent regions of the page. This is done after the compositing pass in preparation for the final render pass. Not all transparent pages use a separate pass for compositing. Transparent pages that do not use a separate pass will have a SWTLT_PRECONVERT_PAGE timeline instead of this timeline. Progress is measured as count with a known extent, in indeterminate units. Render preparation progress updates will only be produced in response to a SWEVT_PROGRESS_UPDATE event.

SWTLT_COMPOSITE_PAGE 

The transparency compositing stage. If the RIP needs a separate pass to composite transparent regions of the page, this timeline indicates the duration of the compositing pass. Not all transparent pages use a separate pass for compositing. This timeline will be a child of SWTLT_RENDER_PAGE, SWTLT_RENDER_PARTIAL, or a SWTLT_RENDER_CACHE timeline. There is no progress recorded on this timeline.

SWTLT_RENDER_PAGE 

The final rendering stage of each page. For each page in a job, there will be a SWTLT_INTERPRET_PAGE timeline, possibly followed by a SWTLT_RENDER_PAGE timeline. If the SWTLT_INTERPRET_PAGE timeline is aborted, there is either an error, or there is no content and there will be no page rendered. There is no progress recorded on this timeline. The contexts attached to the SWTLT_INTERPRET_PAGE and SWTLT_RENDER_PAGE timelines are an integer indicating the page number.

SWTLT_RENDER_PARTIAL 

Partial painting a page. This may happen if the RIP runs low on memory when interpreting a PostScript page. This timeline will be a child of SWTLT_INTERPRET_PAGE. There is no progress recorded on this timeline.

SWTLT_RENDER_SEPARATION 

Rendering a separation. When the RIP is configured to produce separations, each separation rendered will be delimited by a SWTLT_RENDER_SEPARATION timeline. This timeline will be a child of SWTLT_RENDER_PAGE, SWTLT_RENDER_PARTIAL, or SWTLT_RENDER_CACHE. There is no progress recorded on this timeline. If the RIP is not configured to produce separations, this timeline will not be created.

SWTLT_PGB 

Pagebuffer transfer timeline. Progress and extent are measured in lines, continuous across all frames in a separation, in the untrimmed rendering coordinate space. Progress is updated to indicate bands rendered by the RIP and transferred to the PGB device, measured in the number of lines in those bands. The extent start is updated to reflect handled bands (released back to the RIP), measured in the number of lines in those bands.

SWTLT_PRESCANNING_PAGES 

HVD pre-scanning pages phase. Progress is measured in pages, and the extent is set to the number of pages to be analyzed. This phase happens before the SWTLT_POSTSCANNING_PAGES phase.

SWTLT_POSTSCANNING_PAGES 

HVD post-scanning pages phase. Progress is measured in a multiple of the number of bases pages, and the extent is set to that multiple at the timeline start. This phase happens after the SWTLT_SCANNING_PAGES phase.

SWTLT_RENDER_CACHE 

HVD rendering an element into the RIP's cache (i.e. not for immediate output). There is no progress recorded on this timeline.

SWTLT_PRECONVERT_PAGE 

The preconvert stage. If the RIP does not need a separate pass to composite transparent regions of the page, this timeline indicates the time spent converting object colors before the final render pass. Not all transparent pages can use a single pass for both compositing and rendering. Transparent pages that use a separate pass for compositing will have a SWTLT_RENDER_PREPARE timeline instead of this timeline. Progress is measured as count with a known extent, in indeterminate units. Preconversion progress updates will only be produced in response to a SWEVT_PROGRESS_UPDATE event.

SWTLT_CORE_READY 

Core is ready to operate. The lifetime of this timeline indicates when the core has finished booting until when it starts shutting down. It can be used to attach and remove devices or other clients that require the core to be functional. There is no progress recorded on this timeline.