26#ifndef NETLIST_EXPORTER_ALLEGRO_H 
   27#define NETLIST_EXPORTER_ALLEGRO_H 
   47    bool WriteNetlist( 
const wxString& aOutFileName, 
unsigned aNetlistOptions,
 
   58                                        const std::pair<SCH_SYMBOL*, SCH_SHEET_PATH>& aItem2 );
 
   67    static bool CompareSymbolRef( 
const wxString& aRefText1, 
const wxString& aRefText2 );
 
  145    wxString 
formatFunction( wxString aName, std::vector<SCH_PIN*> aPinList );
 
  158    wxString 
getGroupField( 
int aGroupIndex, 
const wxArrayString& aFieldArray,
 
  159                            bool aSanitize = 
true );
 
  187            wxString refText1 = 
m_Pin->GetParentSymbol()->GetRef( &
m_Sheet );
 
  190            if( refText1 == refText2 )
 
  192                unsigned long val1, val2;
 
  195                bool convertingResult = 
m_Pin->GetShownNumber().ToULong( &val1 );
 
  198                if( convertingResult )
 
 
 
 
wxString formatDevice(wxString aString)
Convert a string into one safe for a Telesis device name.
 
wxString m_exportPath
Directory to store device files.
 
static unsigned int extractTailNumber(wxString aString)
Extract the str's tailing number.
 
FILE * m_f
File pointer for netlist file writing operation.
 
static wxString removeTailDigits(wxString aString)
Remove the str's tailing digits.
 
void toAllegroPackageProperties()
Write $A_PROPERTIES section.
 
NETLIST_EXPORTER_ALLEGRO(SCHEMATIC *aSchematic)
 
bool WriteNetlist(const wxString &aOutFileName, unsigned aNetlistOptions, REPORTER &aReporter) override
Write netlist to aOutFileName.
 
std::list< std::pair< SCH_SYMBOL *, SCH_SHEET_PATH > > m_orderedSymbolsSheetpath
Store the ordered symbols with sheetpath.
 
static bool CompareSymbolSheetpath(const std::pair< SCH_SYMBOL *, SCH_SHEET_PATH > &aItem1, const std::pair< SCH_SYMBOL *, SCH_SHEET_PATH > &aItem2)
Compare two std::pair<SCH_SYMBOL*, SCH_SHEET_PATH> variables.
 
wxString formatText(wxString aString)
Convert a string into Telesis-safe format.
 
std::multimap< wxString, wxString > m_packageProperties
 
wxString formatFunction(wxString aName, std::vector< SCH_PIN * > aPinList)
Generate the definition of a function in Telesis format, which consists of multiple declarations (PIN...
 
static bool CompareLibPin(const SCH_PIN *aPin1, const SCH_PIN *aPin2)
Compare two SCH_PIN* variables.
 
wxString formatPin(const SCH_PIN &aPin)
Generate a Telesis-compatible pin name from a pin node.
 
static bool CompareSymbolRef(const wxString &aRefText1, const wxString &aRefText2)
Compare two wxString variables.
 
void extractComponentsInfo()
 
wxString getGroupField(int aGroupIndex, const wxArrayString &aFieldArray, bool aSanitize=true)
Look up a field for a component group, which may have mismatched case, or the component group may not...
 
void toAllegroPackages()
Write the $PACKAGES section.
 
std::multimap< wxString, NET_NODE > m_netNameNodes
Store the NET_NODE with the net name.
 
std::multimap< int, std::pair< SCH_SYMBOL *, SCH_SHEET_PATH > > m_componentGroups
Store the component group.
 
void toAllegroNets()
Write the $NETS section.
 
NETLIST_EXPORTER_BASE(SCHEMATIC *aSchematic)
 
A pure virtual class used to derive REPORTER objects from.
 
Holds all the data relating to one schematic.
 
const SYMBOL * GetParentSymbol() const
 
wxString GetShownNumber() const
 
Handle access to a stack of flattened SCH_SHEET objects by way of a path for creating a flattened sch...
 
virtual const wxString GetRef(const SCH_SHEET_PATH *aSheet, bool aIncludeUnit=false) const =0
 
bool operator<(const NET_NODE &aNetNode) const
 
NET_NODE(SCH_PIN *aPin, const SCH_SHEET_PATH &aSheet, bool aNoConnect)