Limbo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
GdsParser::GdsDB::GdsReader Class Reference

read GDSII file with GDSII database GdsParser::GdsDB::GdsDB More...

#include <GdsIO.h>

Inheritance diagram for GdsParser::GdsDB::GdsReader:
GdsParser::GdsDataBaseKernel

Public Types

typedef GdsDB gdsdb_type
 
typedef gdsdb_type::coordinate_type coordinate_type
 
typedef gdsdb_type::point_type point_type
 

Public Member Functions

 GdsReader (gdsdb_type &db)
 constructor More...
 
bool operator() (std::string const &filename)
 API to read GDSII file. More...
 
required callbacks in parser
Parameters
record_typeGDSII record
data_typeGDSII data type
vBitArraydata
virtual void bit_array_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< int > const &vBitArray)
 
virtual void integer_2_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< int > const &vInteger)
 
virtual void integer_4_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< int > const &vInteger)
 
virtual void real_4_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< double > const &vFloat)
 
virtual void real_8_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< double > const &vFloat)
 
virtual void string_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::string const &str)
 
virtual void begin_end_cbk (::GdsParser::GdsRecords::EnumType record_type)
 
helper functions for easier processing

callbacks for integer

Parameters
record_typeGDSII record
data_typeGDSII data type
vDatadata
void integer_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< int > const &vData)
 
void float_cbk (::GdsParser::GdsRecords::EnumType record_type,::GdsParser::GdsData::EnumType data_type, std::vector< double > const &vData)
 callbacks for floating point number More...
 

Protected Member Functions

void reset ()
 reset all temporary data to default values
 
void printUnsupportRecords () const
 warn unsupported records
 

Protected Attributes

std::string m_string
 STRING.
 
std::string m_sname
 SNAME.
 
int m_layer
 LAYER.
 
int m_datatype
 DATATYPE.
 
int m_pathtype
 PATHTYPE.
 
int m_texttype
 TEXTTYPE.
 
int m_spacing [2]
 SPACING.
 
int m_width
 WIDTH.
 
int m_columns
 COLROW, number of columns.
 
int m_rows
 COLROW, number of rows.
 
double m_angle
 ANGLE.
 
double m_magnification
 MAG.
 
int m_strans
 STRANS.
 
int m_presentation
 PRESENTATION.
 
std::vector< point_type > m_vPoint
 XY.
 
::GdsParser::GdsRecords::EnumType m_status
 current record status
 
int m_fileSize
 file size in bytes
 
gdsdb_typem_db
 reference to GDSII database
 
std::vector< unsigned int > m_vUnsupportRecord
 try to be clean at screen output, record the times of unsupported records
 

Detailed Description

read GDSII file with GDSII database GdsParser::GdsDB::GdsDB

Definition at line 26 of file GdsIO.h.

Constructor & Destructor Documentation

GdsParser::GdsDB::GdsReader::GdsReader ( gdsdb_type db)
inline

constructor

Parameters
dbGDSII database

Definition at line 37 of file GdsIO.h.

Member Function Documentation

virtual void GdsParser::GdsDB::GdsReader::begin_end_cbk ( ::GdsParser::GdsRecords::EnumType  record_type)
virtual
Parameters
record_typeGDSII record
void GdsParser::GdsDB::GdsReader::float_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::vector< double > const &  vData 
)

callbacks for floating point number

Parameters
record_typeGDSII record
data_typeGDSII data type
vDatadata
virtual void GdsParser::GdsDB::GdsReader::integer_2_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::vector< int > const &  vInteger 
)
virtual
Parameters
record_typeGDSII record
data_typeGDSII data type
vIntegerdata
virtual void GdsParser::GdsDB::GdsReader::integer_4_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::vector< int > const &  vInteger 
)
virtual
Parameters
record_typeGDSII record
data_typeGDSII data type
vIntegerdata
bool GdsParser::GdsDB::GdsReader::operator() ( std::string const &  filename)

API to read GDSII file.

Parameters
filenameGDSII file
virtual void GdsParser::GdsDB::GdsReader::real_4_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::vector< double > const &  vFloat 
)
virtual
Parameters
record_typeGDSII record
data_typeGDSII data type
vFloatdata
virtual void GdsParser::GdsDB::GdsReader::real_8_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::vector< double > const &  vFloat 
)
virtual
Parameters
record_typeGDSII record
data_typeGDSII data type
vFloatdata
virtual void GdsParser::GdsDB::GdsReader::string_cbk ( ::GdsParser::GdsRecords::EnumType  record_type,
::GdsParser::GdsData::EnumType  data_type,
std::string const &  str 
)
virtual
Parameters
record_typeGDSII record
data_typeGDSII data type
strdata

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