Command
QisLib_GetGDSII Function: int QisLib_GetGDSII(const char* OutFileName); Inputs: OutFileName: Name and path of the GDSII file to be created. Return: success: 0 failure: one of the following values : Errors: -1: QisLib has not been initialized. -2: The specified path is invalid (null). -3: Cannot save GDSII output file with the same name and path as input file. -4: Unable to create output GDSII file. -5: Cannot extract GDSII data from memory maps. -6: File open in progress, operation not permitted. Description: - This function can be used to extract GDSII/OASIS data in the current window to a flat GDSII file with no hierarchy. - The extracted GDSII file does not contain any cell hierarchy even if the input file is hierarchical. The top cell is called 'TOP'. The data is clipped at the window boundary. - All display filters are disregarded while creating the GDSII file. - Output entities are boundaries. Any paths are converted into boundaries unless they have zero width in which case they are ignored. - Data is output on the same layer as the input. However QisLib_SetOutputLayerMap can be used to control the mapping of the input layers to different output layers. - If the user's program needs to set a particular window for extraction, it should use QisLib_SetExactWindow since QisLib_SetExactWindow makes no adjustments to the window extents based on the image size aspect ratio. However, the user's program must also make sure to restore the original window extents once the extraction is done. - This function will not work if the GDSII file was opened directly from memory maps using QisLib_OpenMemoryMaps. - This function also works when an OASIS file is opened. - This function cannot be used to write to the GDSII/OASIS file currently opened. OutFileName must be different from the name or path of the currently opened GDSII/OASIS file. - By default, the grid and units values of the extracted GDSII file are same as the input GDSII file. However, different output grid and unit can be controlled using the QisLib_SetDBU and QisLib_SetResolution functions. - During extraction from a GDSII file, boxes are converted into boundaries if QisLib_SetBoxBoundary is on. If QisLib_SetBoxBoundary is off, boxes are not extracted. - QisLib_GetGDSII output is affected by current settings such as layer on/off, nesting level, array mode etc. - It is not necessary to open the input file in edit mode to use this function. - QisLib does not emit any progress message even if a progress message callback function has been set using QisLib_SetProgressMessageCallback. - If this operation needs to be cancelled, use QisLib_Stop. This can only be done if QisLib_SetProcessEvents is turned on. Also, for Unix/Linux, the program's application context must be passed to QisLib_InitLib.References: QisLib_OpenMemoryMaps QisLib_SetBoxBoundary QisLib_SetExactWindow QisLib_SetOutputLayerMap QisLib_SetDBU QisLib_SetResolution QisLib_SetProgressMessageCallback QisLib_Stop |