KiCad PCB EDA Suite
|
Container to create a flattened list of symbols because in a complex hierarchy, a symbol can be used more than once and its reference designator is dependent on the sheet path for the same symbol. More...
#include <sch_reference_list.h>
Public Types | |
typedef std::vector< SCH_REFERENCE >::iterator | iterator |
typedef std::vector< SCH_REFERENCE >::const_iterator | const_iterator |
Public Member Functions | |
SCH_REFERENCE_LIST () | |
SCH_REFERENCE & | operator[] (int aIndex) |
const SCH_REFERENCE & | operator[] (int aIndex) const |
void | Clear () |
size_t | GetCount () const |
SCH_REFERENCE & | GetItem (size_t aIdx) |
const SCH_REFERENCE & | GetItem (size_t aIdx) const |
void | AddItem (const SCH_REFERENCE &aItem) |
void | RemoveItem (unsigned int aIndex) |
Remove an item from the list of references. | |
bool | Contains (const SCH_REFERENCE &aItem) const |
Return true if aItem exists in this list. | |
void | SplitReferences () |
Attempt to split all reference designators into a name (U) and number (1). | |
void | RemoveAnnotation () |
Treat all symbols in this list as non-annotated. | |
void | UpdateAnnotation () |
Update the symbol references for the schematic project (or the current sheet). | |
void | ReannotateByOptions (ANNOTATE_ORDER_T aSortOption, ANNOTATE_ALGO_T aAlgoOption, int aStartNumber, const SCH_REFERENCE_LIST &aAdditionalRefs, bool aStartAtCurrent, SCH_SHEET_LIST *aHierarchy) |
Forces reannotation of the provided references. | |
void | ReannotateDuplicates (const SCH_REFERENCE_LIST &aAdditionalReferences) |
Convenience function for the Paste Unique functionality. | |
void | AnnotateByOptions (enum ANNOTATE_ORDER_T aSortOption, enum ANNOTATE_ALGO_T aAlgoOption, int aStartNumber, SCH_MULTI_UNIT_REFERENCE_MAP aLockedUnitMap, const SCH_REFERENCE_LIST &aAdditionalRefs, bool aStartAtCurrent) |
Annotate the references by the provided options. | |
void | Annotate (bool aUseSheetNum, int aSheetIntervalId, int aStartNumber, SCH_MULTI_UNIT_REFERENCE_MAP aLockedUnitMap, const SCH_REFERENCE_LIST &aAdditionalRefs, bool aStartAtCurrent=false) |
Set the reference designators in the list that have not been annotated. | |
int | CheckAnnotation (ANNOTATION_ERROR_HANDLER aErrorHandler) |
Check for annotations errors. | |
void | SortByXCoordinate () |
Sort the list of references by X position. | |
void | SortByYCoordinate () |
Sort the list of references by Y position. | |
void | SortByTimeStamp () |
Sort the flat list by Time Stamp (sheet path + timestamp). | |
void | SortByRefAndValue () |
Sort the list of references by value. | |
void | SortByReferenceOnly () |
Sort the list of references by reference. | |
int | FindRef (const wxString &aPath) const |
Search the list for a symbol with a given reference. | |
int | FindRefByFullPath (const wxString &aFullPath) const |
Search the list for a symbol with the given KIID path (as string). | |
void | GetRefsInUse (int aIndex, std::vector< int > &aIdList, int aMinRefId) const |
Add all the reference designator numbers greater than aMinRefId to aIdList skipping the reference at aIndex. | |
std::vector< int > | GetUnitsMatchingRef (const SCH_REFERENCE &aRef) const |
Return all the unit numbers for a given reference, comparing library reference, value, reference number and reference prefix. | |
int | FindFirstUnusedReference (const SCH_REFERENCE &aRef, int aMinValue, const std::vector< int > &aRequiredUnits) const |
Return the first unused reference number from the properties given in aRef, ensuring all of the units in aRequiredUnits are also unused. | |
std::vector< SCH_SYMBOL_INSTANCE > | GetSymbolInstances () const |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
iterator | erase (iterator position) |
iterator | erase (iterator first, iterator last) |
Static Public Member Functions | |
static wxString | Shorthand (std::vector< SCH_REFERENCE > aList, const wxString &refDelimiter, const wxString &refRangeDelimiter) |
Return a shorthand string representing all the references in the list. | |
Static Private Member Functions | |
static bool | sortByRefAndValue (const SCH_REFERENCE &item1, const SCH_REFERENCE &item2) |
static bool | sortByXPosition (const SCH_REFERENCE &item1, const SCH_REFERENCE &item2) |
static bool | sortByYPosition (const SCH_REFERENCE &item1, const SCH_REFERENCE &item2) |
static bool | sortByTimeStamp (const SCH_REFERENCE &item1, const SCH_REFERENCE &item2) |
static bool | sortByReferenceOnly (const SCH_REFERENCE &item1, const SCH_REFERENCE &item2) |
static int | createFirstFreeRefId (std::vector< int > &aIdList, int aFirstValue) |
Search for the first free reference number in aListId of reference numbers in use. | |
Private Attributes | |
std::vector< SCH_REFERENCE > | m_flatList |
Friends | |
class | BACK_ANNOTATION |
class | BACK_ANNOTATE |
Container to create a flattened list of symbols because in a complex hierarchy, a symbol can be used more than once and its reference designator is dependent on the sheet path for the same symbol.
This flattened list is used for netlist generation, BOM generation, and schematic annotation.
Definition at line 270 of file sch_reference_list.h.
typedef std::vector<SCH_REFERENCE>::const_iterator SCH_REFERENCE_LIST::const_iterator |
Definition at line 581 of file sch_reference_list.h.
typedef std::vector<SCH_REFERENCE>::iterator SCH_REFERENCE_LIST::iterator |
Definition at line 580 of file sch_reference_list.h.
|
inline |
Definition at line 273 of file sch_reference_list.h.
|
inline |
Definition at line 297 of file sch_reference_list.h.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::AddReferences(), Annotate(), SCH_SHEET_LIST::AnnotatePowerSymbols(), SCH_EDIT_FRAME::AnnotateSymbols(), SCH_SHEET_PATH::AppendSymbol(), TEST_SCH_REFERENCE_LIST_FIXTURE::getAdditionalRefs(), DIALOG_SYMBOL_FIELDS_TABLE::getSymbolReferences(), SCH_EDITOR_CONTROL::Paste(), SCH_DRAWING_TOOLS::PlaceSymbol(), and FIELDS_EDITOR_GRID_DATA_MODEL::UpdateReferences().
void SCH_REFERENCE_LIST::Annotate | ( | bool | aUseSheetNum, |
int | aSheetIntervalId, | ||
int | aStartNumber, | ||
SCH_MULTI_UNIT_REFERENCE_MAP | aLockedUnitMap, | ||
const SCH_REFERENCE_LIST & | aAdditionalRefs, | ||
bool | aStartAtCurrent = false |
||
) |
Set the reference designators in the list that have not been annotated.
If a the sheet number is 2 and aSheetIntervalId is 100, then the first reference designator would be 201 and the last reference designator would be 299 when no overlap occurs with sheet number 3. If there are 150 items in sheet number 2, then items are referenced U201 to U351, and items in sheet 3 start from U352
aUseSheetNum | Set to true to start annotation for each sheet at the sheet number times aSheetIntervalId. Otherwise annotate incrementally. |
aSheetIntervalId | The per sheet reference designator multiplier. |
aStartNumber | The number to start with if NOT numbering based on sheet number. |
aLockedUnitMap | A SCH_MULTI_UNIT_REFERENCE_MAP of reference designator wxStrings to SCH_REFERENCE_LISTs. May be an empty map. If not empty, any multi-unit parts found in this map will be annotated as a group rather than individually. |
aAdditionalRefs | Additional references to use for checking that there a reference designator doesn't already exist. The caller must ensure that none of the references in aAdditionalRefs exist in this list. |
aStartAtCurrent | Use m_numRef for each reference as the start number (overrides aStartNumber) |
Definition at line 449 of file sch_reference_list.cpp.
References AddItem(), buildFullReference(), SCH_REFERENCE::CompareLibName(), SCH_REFERENCE::CompareValue(), createFirstFreeRefId(), FindFirstUnusedReference(), GetCount(), GetRefsInUse(), GetUnitsMatchingRef(), SCH_REFERENCE::IsSameInstance(), m_flatList, SCH_REFERENCE::m_isNew, SCH_REFERENCE::m_unit, and SCH_REFERENCE::Split().
Referenced by AnnotateByOptions(), SCH_SHEET_LIST::AnnotatePowerSymbols(), and UpdateAnnotation().
void SCH_REFERENCE_LIST::AnnotateByOptions | ( | enum ANNOTATE_ORDER_T | aSortOption, |
enum ANNOTATE_ALGO_T | aAlgoOption, | ||
int | aStartNumber, | ||
SCH_MULTI_UNIT_REFERENCE_MAP | aLockedUnitMap, | ||
const SCH_REFERENCE_LIST & | aAdditionalRefs, | ||
bool | aStartAtCurrent | ||
) |
Annotate the references by the provided options.
aSortOption | Define the annotation order. See ANNOTATE_ORDER_T. |
aAlgoOption | Define the annotation style. See ANNOTATE_ALGO_T. |
aStartNumber | The start number for non-sheet-based annotation styles. |
appendUndo | True if the annotation operation should be added to an existing undo, false if it should be separately undo-able. |
aLockedUnitMap | A SCH_MULTI_UNIT_REFERENCE_MAP of reference designator wxStrings to SCH_REFERENCE_LISTs. May be an empty map. If not empty, any multi-unit parts found in this map will be annotated as a group rather than individually. |
aAdditionalReferences | Additional references to check for duplicates |
aStartAtCurrent | Use m_numRef for each reference as the start number (overrides aStartNumber) |
Definition at line 407 of file sch_reference_list.cpp.
References Annotate(), INCREMENTAL_BY_REF, SHEET_NUMBER_X_100, SHEET_NUMBER_X_1000, SORT_BY_X_POSITION, SORT_BY_Y_POSITION, SortByXCoordinate(), and SortByYCoordinate().
Referenced by SCH_EDIT_FRAME::AnnotateSymbols(), and ReannotateByOptions().
|
inline |
Definition at line 583 of file sch_reference_list.h.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol().
|
inline |
Definition at line 587 of file sch_reference_list.h.
References m_flatList.
int SCH_REFERENCE_LIST::CheckAnnotation | ( | ANNOTATION_ERROR_HANDLER | aErrorHandler | ) |
Check for annotations errors.
The following annotation error conditions are tested:
aErrorHandler | A handler for errors. |
Definition at line 648 of file sch_reference_list.cpp.
References _, SCH_REFERENCE::CompareRef(), SCH_REFERENCE::CompareValue(), ERCE_DIFFERENT_UNIT_VALUE, ERCE_DUPLICATE_REFERENCE, ERCE_EXTRA_UNITS, ERCE_UNANNOTATED, SCH_REFERENCE::GetLibPart(), SCH_REFERENCE::GetRef(), SCH_REFERENCE::GetSymbol(), SCH_REFERENCE::GetUnit(), LIB_SYMBOL::GetUnitCount(), m_flatList, SCH_REFERENCE::m_numRef, SCH_REFERENCE::m_unit, SCH_REFERENCE::m_value, SortByRefAndValue(), SplitReferences(), and SCH_SYMBOL::SubReference().
Referenced by SCH_EDIT_FRAME::CheckAnnotate(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), and EESCHEMA_JOBS_HANDLER::JobExportPythonBom().
|
inline |
Definition at line 287 of file sch_reference_list.h.
References m_flatList.
Referenced by TEST_SCH_REFERENCE_LIST_FIXTURE::loadTestCase(), and SCH_DRAWING_TOOLS::PlaceSymbol().
bool SCH_REFERENCE_LIST::Contains | ( | const SCH_REFERENCE & | aItem | ) | const |
Return true if aItem exists in this list.
aItem | Reference to check |
Definition at line 52 of file sch_reference_list.cpp.
References GetCount(), and m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::AddReferences(), SCH_EDIT_FRAME::AnnotateSymbols(), TEST_SCH_REFERENCE_LIST_FIXTURE::getAdditionalRefs(), and FIELDS_EDITOR_GRID_DATA_MODEL::UpdateReferences().
|
staticprivate |
Search for the first free reference number in aListId of reference numbers in use.
This function just searches for a hole in a list of incremented numbers, this list must be sorted by increasing values and each value can be stored only once. The new value is added to the list.
aIdList | The buffer that contains the reference numbers in use. |
aFirstValue | The first expected free value |
Definition at line 307 of file sch_reference_list.cpp.
Referenced by Annotate().
|
inline |
Definition at line 585 of file sch_reference_list.h.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol().
|
inline |
Definition at line 589 of file sch_reference_list.h.
References m_flatList.
Definition at line 593 of file sch_reference_list.h.
References m_flatList.
Definition at line 591 of file sch_reference_list.h.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol().
int SCH_REFERENCE_LIST::FindFirstUnusedReference | ( | const SCH_REFERENCE & | aRef, |
int | aMinValue, | ||
const std::vector< int > & | aRequiredUnits | ||
) | const |
Return the first unused reference number from the properties given in aRef, ensuring all of the units in aRequiredUnits are also unused.
aIndex | The index of the reference item used for the search pattern. |
aMinValue | The minimum value for the current search. |
aRequiredUnits | List of units to ensure are free |
Definition at line 240 of file sch_reference_list.cpp.
References m_flatList.
Referenced by Annotate().
int SCH_REFERENCE_LIST::FindRef | ( | const wxString & | aPath | ) | const |
Search the list for a symbol with a given reference.
Definition at line 170 of file sch_reference_list.cpp.
References m_flatList.
Referenced by BACK_ANNOTATE::getChangeList().
int SCH_REFERENCE_LIST::FindRefByFullPath | ( | const wxString & | aFullPath | ) | const |
Search the list for a symbol with the given KIID path (as string).
aFullPath | is the path of the symbol item to search. |
Definition at line 158 of file sch_reference_list.cpp.
References m_flatList.
Referenced by BACK_ANNOTATE::getChangeList(), and FIELDS_EDITOR_GRID_DATA_MODEL::RemoveReferences().
|
inline |
Definition at line 292 of file sch_reference_list.h.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::AddColumn(), Annotate(), SCH_SHEET_LIST::AnnotatePowerSymbols(), SCH_EDIT_FRAME::AnnotateSymbols(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), SCH_EDITOR_CONTROL::AssignFootprints(), SCH_EDIT_FRAME::CheckAnnotate(), BACK_ANNOTATE::checkForUnusedSymbols(), CollectOtherUnits(), Contains(), SCHEMATIC::ConvertRefsToKIIDs(), SCH_EDITOR_CONTROL::ExportSymbolsToLibrary(), findSymbolsAndPins(), TEST_SCH_REFERENCE_LIST_FIXTURE::getAdditionalRefs(), BACK_ANNOTATE::getChangeList(), DIALOG_TABLE_PROPERTIES::getContextualTextVars(), DIALOG_TEXT_PROPERTIES::getContextualTextVars(), FIELDS_EDITOR_GRID_DATA_MODEL::GetDataWidth(), DIALOG_SYMBOL_FIELDS_TABLE::getSymbolReferences(), DIALOG_EDIT_SYMBOLS_LIBID::initDlg(), EESCHEMA_JOBS_HANDLER::JobExportBom(), EESCHEMA_JOBS_HANDLER::JobExportNetlist(), EESCHEMA_JOBS_HANDLER::JobExportPythonBom(), DIALOG_SYMBOL_FIELDS_TABLE::LoadFieldNames(), SCH_EDIT_FRAME::mapExistingAnnotation(), SCH_FIELD::OnScintillaCharAdded(), SCH_DRAWING_TOOLS::PlaceSymbol(), SCH_EDITOR_CONTROL::processCmpToFootprintLinkFile(), ReannotateByOptions(), FIELDS_EDITOR_GRID_DATA_MODEL::RebuildRows(), RemoveAnnotation(), FIELDS_EDITOR_GRID_DATA_MODEL::RemoveColumn(), FIELDS_EDITOR_GRID_DATA_MODEL::RenameColumn(), sheetContainsOnlyWantedItems(), SplitReferences(), ERC_TESTER::TestMissingUnits(), ERC_TESTER::TestMultiunitFootprints(), and UpdateAnnotation().
|
inline |
Definition at line 294 of file sch_reference_list.h.
References m_flatList.
Referenced by ERC_TESTER::TestMissingUnits(), and ERC_TESTER::TestMultiunitFootprints().
|
inline |
Definition at line 295 of file sch_reference_list.h.
References m_flatList.
void SCH_REFERENCE_LIST::GetRefsInUse | ( | int | aIndex, |
std::vector< int > & | aIdList, | ||
int | aMinRefId | ||
) | const |
Add all the reference designator numbers greater than aMinRefId to aIdList skipping the reference at aIndex.
aIndex | is the current symbol's index to use for reference prefix filtering. |
aIdList | is the buffer to fill. |
aMinRefId | is the minimum ID value to store. All values < aMinRefId are ignored. |
Definition at line 182 of file sch_reference_list.cpp.
References m_flatList, and alg::remove_duplicates().
Referenced by Annotate().
std::vector< SCH_SYMBOL_INSTANCE > SCH_REFERENCE_LIST::GetSymbolInstances | ( | ) | const |
Definition at line 289 of file sch_reference_list.cpp.
References m_flatList, SCH_SYMBOL_INSTANCE::m_Path, SCH_SYMBOL_INSTANCE::m_Reference, and SCH_SYMBOL_INSTANCE::m_Unit.
std::vector< int > SCH_REFERENCE_LIST::GetUnitsMatchingRef | ( | const SCH_REFERENCE & | aRef | ) | const |
Return all the unit numbers for a given reference, comparing library reference, value, reference number and reference prefix.
aRef | is the index of a symbol to use for reference prefix and number filtering. |
Definition at line 202 of file sch_reference_list.cpp.
References m_flatList, SCH_REFERENCE::m_numRef, SCH_REFERENCE::m_unit, and alg::remove_duplicates().
Referenced by Annotate().
|
inline |
Definition at line 277 of file sch_reference_list.h.
References m_flatList.
|
inline |
Definition at line 282 of file sch_reference_list.h.
References m_flatList.
void SCH_REFERENCE_LIST::ReannotateByOptions | ( | ANNOTATE_ORDER_T | aSortOption, |
ANNOTATE_ALGO_T | aAlgoOption, | ||
int | aStartNumber, | ||
const SCH_REFERENCE_LIST & | aAdditionalRefs, | ||
bool | aStartAtCurrent, | ||
SCH_SHEET_LIST * | aHierarchy | ||
) |
Forces reannotation of the provided references.
Will also reannotate associated multi-unit symbols.
aSortOption | Define the annotation order. See ANNOTATE_ORDER_T. |
aAlgoOption | Define the annotation style. See ANNOTATE_ALGO_T. |
aStartNumber | The start number for non-sheet-based annotation styles. |
aAdditionalReferences | Additional references to check for duplicates |
aStartAtCurrent | Use m_numRef for each reference as the start number (overrides aStartNumber) |
aHierarchy | Optional sheet path hierarchy for resetting the references' sheet numbers based on their sheet's place in the hierarchy. Set nullptr if not desired. |
Definition at line 357 of file sch_reference_list.cpp.
References AnnotateByOptions(), SCH_SHEET_LIST::FindSheetForPath(), GetCount(), SCH_SYMBOL::GetRef(), SCH_REFERENCE::GetSheetPath(), SCH_REFERENCE::GetSymbol(), m_flatList, SCH_REFERENCE::m_isNew, path, SCH_REFERENCE::SetSheetNumber(), and SplitReferences().
Referenced by SCH_DRAWING_TOOLS::PlaceSymbol(), and ReannotateDuplicates().
void SCH_REFERENCE_LIST::ReannotateDuplicates | ( | const SCH_REFERENCE_LIST & | aAdditionalReferences | ) |
Convenience function for the Paste Unique functionality.
Do not use as a general reannotation method.
Replaces any duplicate reference designators with the next available number after the present number regardless of configured annotation options.
Multi-unit symbols are reannotated together.
Definition at line 401 of file sch_reference_list.cpp.
References INCREMENTAL_BY_REF, ReannotateByOptions(), and UNSORTED.
|
inline |
Treat all symbols in this list as non-annotated.
Does not update annotation state of the symbols.
Definition at line 340 of file sch_reference_list.h.
References GetCount(), and m_flatList.
Referenced by SCH_EDIT_FRAME::AnnotateSymbols().
void SCH_REFERENCE_LIST::RemoveItem | ( | unsigned int | aIndex | ) |
Remove an item from the list of references.
aIndex | is the index of the item to be removed. |
Definition at line 45 of file sch_reference_list.cpp.
References m_flatList.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::RemoveReferences().
|
static |
Return a shorthand string representing all the references in the list.
For instance, "R1, R2, R4 - R7, U1"
spaced | Add spaces between references |
Definition at line 910 of file sch_reference_list.cpp.
Referenced by FIELDS_EDITOR_GRID_DATA_MODEL::GetValue().
|
inline |
Sort the list of references by value.
Symbols are sorted in the following order:
Definition at line 505 of file sch_reference_list.h.
References m_flatList, and sortByRefAndValue().
Referenced by CheckAnnotation().
|
staticprivate |
Definition at line 104 of file sch_reference_list.cpp.
References SCH_REFERENCE::CompareRef(), SCH_REFERENCE::CompareValue(), SCH_REFERENCE::m_sheetNum, SCH_REFERENCE::m_symbolPos, SCH_REFERENCE::m_symbolUuid, SCH_REFERENCE::m_unit, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SortByRefAndValue().
|
inline |
Sort the list of references by reference.
Symbols are sorted in the following order:
Definition at line 517 of file sch_reference_list.h.
References m_flatList, and sortByReferenceOnly().
Referenced by SCH_EDITOR_CONTROL::Paste(), and SCH_DRAWING_TOOLS::PlaceSymbol().
|
staticprivate |
Definition at line 131 of file sch_reference_list.cpp.
References SCH_REFERENCE::GetRef(), SCH_REFERENCE::m_symbolUuid, SCH_REFERENCE::m_unit, and StrNumCmp().
Referenced by SortByReferenceOnly().
|
inline |
Sort the flat list by Time Stamp (sheet path + timestamp).
Useful to detect duplicate Time Stamps
Definition at line 489 of file sch_reference_list.h.
References m_flatList, and sortByTimeStamp().
Referenced by BACK_ANNOTATE::checkForUnusedSymbols().
|
staticprivate |
Definition at line 146 of file sch_reference_list.cpp.
References SCH_SHEET_PATH::Cmp(), SCH_REFERENCE::m_sheetPath, and SCH_REFERENCE::m_symbolUuid.
Referenced by SortByTimeStamp().
|
inline |
Sort the list of references by X position.
Symbols are sorted as follows:
Definition at line 464 of file sch_reference_list.h.
References m_flatList, and sortByXPosition().
Referenced by AnnotateByOptions().
|
staticprivate |
Definition at line 64 of file sch_reference_list.cpp.
References SCH_REFERENCE::CompareRef(), SCH_REFERENCE::m_sheetNum, SCH_REFERENCE::m_symbolPos, SCH_REFERENCE::m_symbolUuid, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SortByXCoordinate().
|
inline |
Sort the list of references by Y position.
Symbols are sorted as follows:
Definition at line 479 of file sch_reference_list.h.
References m_flatList, and sortByYPosition().
Referenced by AnnotateByOptions().
|
staticprivate |
Definition at line 84 of file sch_reference_list.cpp.
References SCH_REFERENCE::CompareRef(), SCH_REFERENCE::m_sheetNum, SCH_REFERENCE::m_symbolPos, SCH_REFERENCE::m_symbolUuid, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SortByYCoordinate().
|
inline |
Attempt to split all reference designators into a name (U) and number (1).
If the last character is '?' or not a digit, the reference is tagged as not annotated. For symbols with multiple parts, keeps the unit number intact
Definition at line 329 of file sch_reference_list.h.
References GetCount(), and m_flatList.
Referenced by SCH_SHEET_LIST::AnnotatePowerSymbols(), SCH_EDIT_FRAME::AnnotateSymbols(), CheckAnnotation(), FIELDS_EDITOR_GRID_DATA_MODEL::FIELDS_EDITOR_GRID_DATA_MODEL(), SCH_EDITOR_CONTROL::IncrementAnnotations(), and ReannotateByOptions().
|
inline |
Update the symbol references for the schematic project (or the current sheet).
Definition at line 354 of file sch_reference_list.h.
References Annotate(), GetCount(), and m_flatList.
Referenced by SCH_SHEET_LIST::AnnotatePowerSymbols(), and SCH_DRAWING_TOOLS::PlaceSymbol().
|
friend |
Definition at line 621 of file sch_reference_list.h.
|
friend |
Definition at line 578 of file sch_reference_list.h.
|
private |
Definition at line 623 of file sch_reference_list.h.
Referenced by AddItem(), Annotate(), begin(), CheckAnnotation(), Clear(), Contains(), end(), erase(), FindFirstUnusedReference(), FindRef(), FindRefByFullPath(), GetCount(), GetItem(), GetRefsInUse(), GetSymbolInstances(), GetUnitsMatchingRef(), operator[](), ReannotateByOptions(), RemoveAnnotation(), RemoveItem(), SortByRefAndValue(), SortByReferenceOnly(), SortByTimeStamp(), SortByXCoordinate(), SortByYCoordinate(), SplitReferences(), and UpdateAnnotation().