KiCad PCB EDA Suite
netlist_object.h File Reference

Definition of the NETLIST_OBJECT class. More...

#include <sch_sheet_path.h>
#include <lib_pin.h>
#include <sch_item.h>

Go to the source code of this file.

Classes

class  NETLIST_OBJECT
 
class  NETLIST_OBJECT_LIST
 NETLIST_OBJECT_LIST is a container holding and owning NETLIST_OBJECTs, which are connected items in a full schematic hierarchy. More...
 

Typedefs

typedef std::vector< NETLIST_OBJECT * > NETLIST_OBJECTS
 Type NETLIST_OBJECTS is a container referring to (not owning) NETLIST_OBJECTs, which are connected items in a full schematic hierarchy. More...
 

Enumerations

enum  NETLIST_ITEM {
  NETLIST_ITEM::ITEM_UNSPECIFIED, NETLIST_ITEM::SEGMENT, NETLIST_ITEM::BUS, NETLIST_ITEM::JUNCTION,
  NETLIST_ITEM::LABEL, NETLIST_ITEM::GLOBLABEL, NETLIST_ITEM::HIERLABEL, NETLIST_ITEM::SHEETLABEL,
  NETLIST_ITEM::BUSLABELMEMBER, NETLIST_ITEM::GLOBBUSLABELMEMBER, NETLIST_ITEM::HIERBUSLABELMEMBER, NETLIST_ITEM::SHEETBUSLABELMEMBER,
  NETLIST_ITEM::PINLABEL, NETLIST_ITEM::PIN, NETLIST_ITEM::NOCONNECT
}
 
enum  NET_CONNECTION { NET_CONNECTION::UNCONNECTED = 0, NET_CONNECTION::NOCONNECT_SYMBOL_PRESENT, NET_CONNECTION::PAD_CONNECT }
 

Functions

bool IsBusLabel (const wxString &aLabel)
 Function IsBusLabel test if aLabel has a bus notation. More...
 

Detailed Description

Definition of the NETLIST_OBJECT class.

Definition in file netlist_object.h.

Typedef Documentation

◆ NETLIST_OBJECTS

typedef std::vector<NETLIST_OBJECT*> NETLIST_OBJECTS

Type NETLIST_OBJECTS is a container referring to (not owning) NETLIST_OBJECTs, which are connected items in a full schematic hierarchy.

It is useful when referring to NETLIST_OBJECTs actually owned by some other container.

Definition at line 294 of file netlist_object.h.

Enumeration Type Documentation

◆ NET_CONNECTION

enum NET_CONNECTION
strong
Enumerator
UNCONNECTED 
NOCONNECT_SYMBOL_PRESENT 
PAD_CONNECT 

Definition at line 83 of file netlist_object.h.

84 {
85  UNCONNECTED = 0, /* Pin or Label not connected (error) */
86  NOCONNECT_SYMBOL_PRESENT, /* Pin not connected but have a NoConnect
87  * symbol on it (no error) */
88  PAD_CONNECT /* Normal connection (no error) */
89 };

◆ NETLIST_ITEM

enum NETLIST_ITEM
strong
Enumerator
ITEM_UNSPECIFIED 
SEGMENT 
BUS 
JUNCTION 
LABEL 
GLOBLABEL 
HIERLABEL 
SHEETLABEL 
BUSLABELMEMBER 
GLOBBUSLABELMEMBER 
HIERBUSLABELMEMBER 
SHEETBUSLABELMEMBER 
PINLABEL 
PIN 
NOCONNECT 

Definition at line 44 of file netlist_object.h.

45 {
46  ITEM_UNSPECIFIED, // only for not yet initialized instances
47  SEGMENT, // connection by wire
48  BUS, // connection by bus
49  JUNCTION, // connection by junction: can connect to
50  // or more crossing wires
51  LABEL, // this is a local label
52  GLOBLABEL, // this is a global label that connect all
53  // others global label in whole hierarchy
54  HIERLABEL, // element to indicate connection to a
55  // higher-level sheet
56  SHEETLABEL, // element to indicate connection to a
57  // lower-level sheet.
58  BUSLABELMEMBER, /* created when a bus label is found:
59  * the bus label (like DATA[0..7] is
60  * converted to n single labels like
61  * DATA0, DATA1 ...
62  * These objects are living only in the current
63  * NETLIST_OBJECT_LIST, not in shematic.
64  */
65  GLOBBUSLABELMEMBER, // see NET_BUSLABELMEMBER, used when a
66  // global bus label is found
67  HIERBUSLABELMEMBER, // see NET_BUSLABELMEMBER, used when a
68  // hierarchical bus label is found
69  SHEETBUSLABELMEMBER, // see NET_BUSLABELMEMBER, used when a
70  // pin sheet label using bus notation
71  // is found
72  PINLABEL, /* created when a pin is POWER (IN or
73  * OUT) with invisible attribute is found:
74  * these pins are equivalent to a global
75  * label and are automatically connected
76  */
77  PIN, // this is an usual pin
78  NOCONNECT // this is a no connect symbol
79 };

Function Documentation

◆ IsBusLabel()

bool IsBusLabel ( const wxString &  aLabel)

Function IsBusLabel test if aLabel has a bus notation.

Parameters
aLabelA wxString object containing the label to test.
Returns
true if text is a bus notation format otherwise false is returned.