exlout.h Source File

Main Page Class Hierarchy Compound List File List Compound Members

# exlout.h

    00001 /*
    00002 Program         GDSDUMP.H
    00003 Purpose         Creates a plain text file from a GDS-II structure
    00004 Programmers             R. Spekreijse & N. Noorlander
    00005 Last Update             22-12-1995
    00006 */
    00007
    00008 #ifndef _EXL_OUTDRIVER
    00009 #define _EXL_OUTDRIVER
    00010
    00011 #ifdef __GNUG__
    00012 #pragma interface
    00013 #endif
    00014
    00015 #include <string.h>
    00016 #include <fstream.h>
    00017
    00018 #include "_lnk_itr.h"
    00019 #include "drivout.h"
    00020 #include "misc.h"
    00021 #include "gdserr.h"
    00022 #include "lsetup.h"
    00023 #include "point.h"
    00024
    00025 class EXL_driver_out: public Driver_out
    00026 {
    00027         public:
    00028                 // constructor and destructor
    00029                 EXL_driver_out(const wxString& _filename, bool only_visible = false);
    00030                 ~EXL_driver_out();
    00031
    00032                 void  WriteNumber(double big);
    00033                 // overloaded function from class Driver
    00034                 void    Write(ArrayReference*);
    00035                 void    Write(Element*);
    00036                 void    Write(Boundary*);
    00037                 void  Write(Box* _Box);
    00038                 void  Write(Circle* _Circle);
    00039                 void    Write(GdsII*);
    00040                 void    Write(Library*);
    00041                 void    Write(Path*);
    00042                 void    Write(Arcseg*);
    00043                 void    Write(Point*);
    00044                 void  Write(Segment *_Segment);
    00045                 void    Write(G_Polygon*);
    00046                 void    Write(G_Polyline*);
    00047                 void    Write(StructureReference*);
    00048                 void    Write(Structure*);
    00049                 void    Write(Text*);
    00050
    00051         protected:
    00052                 void  WriteHeader();
    00053
    00054       // for containing the absolute polygon
    00055                 G_Polygon*                 _AbsPolygon;
    00056
    00057            TDLI<Segment>*                               _AI;
    00058
    00059       // holds the matrix from structure reference
    00060                 wxTransformMatrix*      _matrix;
    00061
    00062                 wxString EXL_out_filename;              // the filename
    00063                 ofstream        EXL_out_file;                   // the output stream
    00064                 int      points_written;      // number of points on one line
    00065       //the following data is temp data for arcsegments
    00066       Point     _mid;                // middle point of arc segment
    00067       double   _RadiusC,_Radius,_beginrad,_endrad,_midrad,_phit;
    00068       int      m_tool_count_for_holes;
    00069       Point    _next;                              // end point of arc to write
    00070       bool   _first;              //to tell if it is the first point of a polygon or polyline
    00071
    00072                 GdsII*  m_flatcopy;
    00073 };
    00074
    00075 #endif _GDS_DRIVER

exlout.h Source File -- Thu Nov 28 21:24:56 2002 -- 28 Nov 2002 -- 1.2.18 -- -- . -- Main Page