Main Page   Class Hierarchy   Compound List   File List   Compound Members  

structur.h

00001 /*
00002 Program STRUCTUR.H
00003 Purpose GdsII structure definition (header)
00004 */
00005 
00006 #ifndef STRUCTURE_H
00007 #define STRUCTURE_H
00008 
00009 #ifdef __GNUG__
00010 #pragma interface
00011 #endif
00012 
00013 #include <string.h>
00014 
00015 #include "misc.h"
00016 #include "wxmatrix.h"
00017 #include "bbox.h"
00018 #include "gdserr.h"
00019 #include "gdsii.h"
00020 //#include "element.h"
00021 #include "proper.h"
00022 #include "elemlst.h"
00023 
00024 class DrawDriver;
00025 class Driver_out;
00026 
00027 class ModeTime;
00028 
00029 class Structure : public ElementList
00030 {
00031         public:
00032                 // constructors & destructors
00033                 Structure();
00034                 Structure(const wxString&);
00035                 ~Structure();
00036 
00037       void Write(DrawDriver& dr);
00038 
00039                 // public memberfunctions
00040                 void                    Init(const wxString& name);
00041                 void                    DecrementReferences(int nr = 1);
00042                 void                    IncrementReferences();
00043                 void                    LinkReferences(GdsII* structurelist);
00044 
00045       void        Rename(const wxString& oud, const wxString& nieuw);
00046                 void            Rename(GdsII* _structurelist);
00047 
00048                 Structure&      operator=(Structure&);
00049 
00050                 // get and set functions
00051                 int                                     GetReferenced();
00052                 void                                    SetReferenced(int);
00053                 void                               ResetReferenced();
00054                 const wxString&   GetStructureName();
00055                 void                                    SetStructureName(const wxString&);
00056                 ModeTime*                       GetBgnstr();
00057                 void                                    SetBgnstr(ModeTime*);
00058 
00059                 int                                           GetExplodeReferenced();
00060                 void                                          SetExplodeReferenced(int);
00061                 void                                    ResetExplodeReferenced();
00062                 void                                                    DecrementExplodeReferences(int nr = 1);
00063                 void                                                    IncrementExplodeReferences();
00064                 void                                                    Explode(Structure* _Top,bool selectedonly,GdsII* _structurelist);
00065                 void                                                    Flatten(Structure* _Top,wxTransformMatrix* _Matrix,bool, bool , EleFlags,bool deep);
00066 
00068       void                                                      SetStamp(long event);
00070       long                                                      GetStamp();
00071 
00072         protected:
00073                 void                                                    Redirect(Structure* _old,Structure* _new);
00074 
00075                 wxString                                                _structurename;
00076                 ModeTime*                                       _bgnstr;
00077                 int                                                     _nr_of_references;
00078                 int                                                     _nr_of_explode_references;
00079 
00081                 long                                          _stamp;
00082 };
00083 
00084 #endif
structur.h Source File -- Thu Nov 28 21:24:56 2002 -- 28 Nov 2002 -- 1.2.18 -- -- . -- Main Page