35 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/**
 | 
						|
 * @defgroup GdsOutputRenderer GDS Output Renderer base class
 | 
						|
 * 
 | 
						|
 * The renderers are used to convert the cell structures read from the GDS layout file
 | 
						|
 * into different output formats.
 | 
						|
 * 
 | 
						|
 * The GdsOutputRenderer base class is used to derive all renderers from.
 | 
						|
 *
 | 
						|
 * @warning Although the GdsOutputRenderer class provides compatibility for asynchronous rendering,
 | 
						|
 * the class is not thread safe / re-entrant. Only use it from a signle context. Not even the rendering function called is allowed to modifiy this object.
 | 
						|
 * 
 | 
						|
 * A allowed function to be called from the async rendering thread is #gds_output_renderer_update_gui_status_from_async and the get functions for the properties.
 | 
						|
 *  
 | 
						|
 * @note The context that owned the renderer has to ensure that only one rendering is active at a time for a single instance of a renderer.
 | 
						|
 *
 | 
						|
 * By default this class implements the following features:
 | 
						|
 * 
 | 
						|
 * @section GdsOutputRendererProps Properties
 | 
						|
 * Property Name    | Description
 | 
						|
 * -----------------|----------------------------------------------------------------
 | 
						|
 * layer-settings   | LayerSettings object containing the layer rendering information
 | 
						|
 * output-file      | Output file name for rendering
 | 
						|
 *
 | 
						|
 * All these properties have to be set for rendering.
 | 
						|
 *
 | 
						|
 * @section GdsOutputRendererSignals Signals / Events
 | 
						|
 * Signal Name      | Description                                     | Callback prototype
 | 
						|
 * -----------------|-------------------------------------------------|-----------------------------------------------------------
 | 
						|
 * async-finished   | The asynchronous rendering is finished          | void callback(GdsOutputRenderer *src, gpointer user_data)
 | 
						|
 * progress-changed | The asynchronous rendering progress changed     | void callback(GdsOutputRenderer *src, const char *progress, gpointer user_data)
 | 
						|
 *
 | 
						|
 * @note The `char *progress` supplied to the callback function must not be modified or freed.
 | 
						|
 *
 | 
						|
 */
 |