Limbo 3.5.4
Loading...
Searching...
No Matches
GdsParser::GdsDriver Class Reference

High-level wrapper class for GdsReader. Everything is saved in an internal data structure and users only need to provide simple callbacks. More...

#include <GdsDriver.h>

Inheritance diagram for GdsParser::GdsDriver:
GdsParser::GdsDataBase GdsParser::GdsDataBaseKernel

Public Types

typedef GdsDataBase base_type
typedef GdsDriverDataBase database_type

Public Member Functions

 GdsDriver (database_type &)
 constructor
bool operator() (string const &filename)
 Top function for GdsDriver.

Protected Member Functions

template<typename ContainerType>
void general_cbk (string const &ascii_record_type, string const &ascii_data_type, ContainerType const &vData)
 Generalized callback for all cases.
required callbacks from GdsDataBase
virtual void bit_array_cbk (const char *ascii_record_type, const char *ascii_data_type, vector< int > const &vBitArray)
 bit array callback
virtual void integer_2_cbk (const char *ascii_record_type, const char *ascii_data_type, vector< int > const &vInteger)
 2-byte integer callback
virtual void integer_4_cbk (const char *ascii_record_type, const char *ascii_data_type, vector< int > const &vInteger)
 4-byte integer callback
virtual void real_4_cbk (const char *ascii_record_type, const char *ascii_data_type, vector< double > const &vFloat)
 4-byte floating point number callback
virtual void real_8_cbk (const char *ascii_record_type, const char *ascii_data_type, vector< double > const &vFloat)
 8-byte floating point number callback
virtual void string_cbk (const char *ascii_record_type, const char *ascii_data_type, string const &str)
 string callback
virtual void begin_end_cbk (const char *ascii_record_type)
 begin or end indicator of a block

Protected Attributes

database_type & m_db
 database type
GdsLib m_lib
 when parsed a lib, pass it using add_gds_lib function
string m_current
 it can be HEADER, LIBRARY, CELL, BOUNDARY, BOX, TEXT, SREF

Detailed Description

High-level wrapper class for GdsReader. Everything is saved in an internal data structure and users only need to provide simple callbacks.

Definition at line 135 of file GdsDriver.h.

Member Typedef Documentation

◆ base_type

typedef GdsDataBase GdsParser::GdsDriver::base_type

Definition at line 139 of file GdsDriver.h.

◆ database_type

typedef GdsDriverDataBase GdsParser::GdsDriver::database_type

Definition at line 140 of file GdsDriver.h.

Member Function Documentation

◆ begin_end_cbk()

virtual void GdsParser::GdsDriver::begin_end_cbk ( const char * ascii_record_type)
protectedvirtual

begin or end indicator of a block

Parameters
ascii_record_typerecord

Implements GdsParser::GdsDataBase.

◆ bit_array_cbk()

virtual void GdsParser::GdsDriver::bit_array_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
vector< int > const & vBitArray )
protectedvirtual

bit array callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
vBitArraydata array

Implements GdsParser::GdsDataBase.

◆ general_cbk()

template<typename ContainerType>
void GdsParser::GdsDriver::general_cbk ( string const & ascii_record_type,
string const & ascii_data_type,
ContainerType const & vData )
protected

Generalized callback for all cases.

Template Parameters
ContainerTypecontainer type
Parameters
ascii_record_typerecord in ASCII
ascii_data_typedata type in ASCII
vDatadata

Definition at line 177 of file GdsDriver.h.

◆ integer_2_cbk()

virtual void GdsParser::GdsDriver::integer_2_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
vector< int > const & vInteger )
protectedvirtual

2-byte integer callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
vIntegerdata array

Implements GdsParser::GdsDataBase.

◆ integer_4_cbk()

virtual void GdsParser::GdsDriver::integer_4_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
vector< int > const & vInteger )
protectedvirtual

4-byte integer callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
vIntegerdata array

Implements GdsParser::GdsDataBase.

◆ operator()()

bool GdsParser::GdsDriver::operator() ( string const & filename)

Top function for GdsDriver.

Parameters
filenameGDSII file

◆ real_4_cbk()

virtual void GdsParser::GdsDriver::real_4_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
vector< double > const & vFloat )
protectedvirtual

4-byte floating point number callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
vFloatdata array

Implements GdsParser::GdsDataBase.

◆ real_8_cbk()

virtual void GdsParser::GdsDriver::real_8_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
vector< double > const & vFloat )
protectedvirtual

8-byte floating point number callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
vFloatdata array

Implements GdsParser::GdsDataBase.

◆ string_cbk()

virtual void GdsParser::GdsDriver::string_cbk ( const char * ascii_record_type,
const char * ascii_data_type,
string const & str )
protectedvirtual

string callback

Parameters
ascii_record_typerecord
ascii_data_typedata type
strdata

Implements GdsParser::GdsDataBase.

Member Data Documentation

◆ m_current

string GdsParser::GdsDriver::m_current
protected

it can be HEADER, LIBRARY, CELL, BOUNDARY, BOX, TEXT, SREF

current block name.

Definition at line 172 of file GdsDriver.h.

◆ m_db

database_type& GdsParser::GdsDriver::m_db
protected

database type

Definition at line 169 of file GdsDriver.h.

◆ m_lib

GdsLib GdsParser::GdsDriver::m_lib
protected

when parsed a lib, pass it using add_gds_lib function

temporary GdsLib object.

Definition at line 170 of file GdsDriver.h.


The documentation for this class was generated from the following file: