/**********************************************/ /* CVPCB : declaration des variables globales */ /**********************************************/ #ifndef eda_global #define eda_global extern #endif #include "wxstruct.h" #include "pcbnew.h" #include "cvstruct.h" #include "gr_basic.h" #include "colors.h" // Define print format d to display a schematic component line #define CMP_FORMAT wxT("%3d %+8s - %+16s : %-.32s") #define FILTERFOOTPRINTKEY "FilterFootprint" enum TypeOfStruct { STRUCT_NOT_INIT, STRUCT_COMPONENT, STRUCT_PIN, STRUCT_MODULE, STRUCT_PSEUDOMODULE }; class STOREPIN { public: int m_Type; /* Type de la structure */ STOREPIN * Pnext; /* Chainage avant */ int m_Index; /* variable utilisee selon types de netlistes */ int m_PinType; /* code type electrique ( Entree Sortie Passive..) */ wxString m_PinNet; /* Pointeur sur le texte nom de net */ wxString m_PinNum; wxString m_PinName; wxString m_Repere; /* utilise selon formats de netliste */ STOREPIN(void); } ; class STORECMP { public: int m_Type; /* Type de la structure */ STORECMP * Pnext; /* Chainage avant */ STORECMP * Pback; /* Chainage arriere */ int m_Num; /* Numero d'ordre */ int m_Multi; /* Nombre d' unites par boitier */ STOREPIN * m_Pins; /* pointeur sur la liste des Pins */ wxString m_Reference; /* U3, R5 ... */ wxString m_Valeur; /* 7400, 47K ... */ wxString m_TimeStamp; /* Signature temporelle ("00000000" si absente) */ wxString m_Module; /* Nom du module (Package) corresp */ wxString m_Repere; /* utilise selon formats de netliste */ wxArrayString m_FootprintFilter; /* List of allowed footprints (wildcart allowed if void: no filtering */ STORECMP(void); ~STORECMP(void); } ; class STOREMOD { public: int m_Type; /* Type de la structure */ STOREMOD * Pnext; /* Chainage avant */ STOREMOD * Pback; /* Chainage arriere */ wxString m_Module; /* Nom du module */ wxString m_LibName; /* Nom de la librairie contenant ce module */ int m_Num ; /* Numero d'ordre pour affichage sur la liste */ wxString m_Doc; /* Doc associee */ wxString m_KeyWord; /* Mots cles associes */ STOREMOD(void); }; eda_global STOREMOD * g_BaseListePkg; eda_global STORECMP * g_BaseListeCmp; eda_global FILE *source ; eda_global FILE *dest ; eda_global FILE *libcmp ; eda_global FILE *lib_module ; /* nom des fichiers a traiter */ eda_global wxString FFileName; /* Types de netliste: */ #define TYPE_NON_SPECIFIE 0 #define TYPE_ORCADPCB2 1 #define TYPE_PCAD 2 #define TYPE_VIEWLOGIC_WIR 3 #define TYPE_VIEWLOGIC_NET 4 /* Gestion des noms des librairies */ eda_global wxString g_EquivExtBuffer #ifdef MAIN ( wxT(".equ") ) #endif ; eda_global wxString g_ExtCmpBuffer #ifdef MAIN ( wxT(".cmp") ) #endif ; eda_global wxString g_UserNetDirBuffer; // Netlist path (void = current working directory) eda_global wxArrayString g_ListName_Equ; // list of .equ files to load eda_global int g_FlagEESchema; eda_global int Rjustify; /* flag pout troncature des noms de Net: = 0: debut de chaine conservee (->ORCADPCB2) = 1: fin de chaine conservee (->VIEWLOGIC) */ eda_global int selection_type; /* 0 pour sel par U??, 1 pour sel par ref ORCADPCB */ eda_global int modified; /* Flag != 0 si modif attribution des modules */ eda_global int ListModIsModified; /* Flag != 0 si modif liste des lib modules */ eda_global char alim[1024]; eda_global int nbcomp ; /* nombre de composants trouves */ eda_global int nblib ; /* nombre d'empreintes trouvees */ eda_global int composants_non_affectes ;/* nbre de composants non affectes */ eda_global wxString NameBuffer; eda_global wxString NetInNameBuffer; eda_global wxString NetInExtBuffer; eda_global wxString PkgInExtBuffer; eda_global wxString NetDirBuffer; eda_global wxString ExtRetroBuffer #ifdef MAIN ( wxT(".stf") ) #endif ; // Variables generales */ // Unused, for pcbnew compatibility: eda_global Ki_PageDescr * SheetList[] #ifdef MAIN = {NULL} #endif ; // Unused, for pcbnew compatibility: void Plume(int state);