32#include <fmt/format.h>
59 m_netClass = std::make_shared<NETCLASS>( wxT(
"Default" ) );
91 aList.emplace_back(
_(
"Net Code" ), fmt::format(
"{}",
GetNetCode() ) );
103 for(
PAD*
pad : footprint->Pads() )
110 aList.emplace_back(
_(
"Pads" ), fmt::format(
"{}", count ) );
120 else if( !startTrack )
125 aList.emplace_back(
_(
"Vias" ), fmt::format(
"{}", count ) );
129 double lengthNet = 0.0;
130 double lengthPadToDie = 0.0;
131 double delayNet = 0.0;
132 double delayPadToDie = 0.0;
134 std::tie( count, lengthNet, lengthPadToDie, delayNet, delayPadToDie ) =
137 if( delayNet == 0.0 )
155 aList.emplace_back(
_(
"On Board" ),
159 aList.emplace_back(
_(
"In Package" ),
175 static const std::vector<KICAD_T> netItemTypes = {
PCB_TRACE_T,
186 bbox.
Merge( item->GetBoundingBox() );
203 if( aNewName.Contains( wxT(
"/" ) ) )
std::shared_ptr< NET_SETTINGS > m_NetSettings
BOARD_ITEM(BOARD_ITEM *aParent, KICAD_T idtype, PCB_LAYER_ID aLayer=F_Cu)
virtual const BOARD * GetBoard() const
Return the BOARD in which this BOARD_ITEM resides, or NULL if none.
Information pertinent to a Pcbnew printed circuit board.
std::tuple< int, double, double, double, double > GetTrackLength(const PCB_TRACK &aTrack) const
Return data on the length and number of track segments connected to a given track.
const FOOTPRINTS & Footprints() const
const TRACKS & Tracks() const
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
std::shared_ptr< CONNECTIVITY_DATA > GetConnectivity() const
Return a list of missing connections between components/tracks.
constexpr BOX2< Vec > & Merge(const BOX2< Vec > &aRect)
Modify the position and size of the rectangle in order to contain aRect.
The base class for create windows for drawing purpose.
virtual bool Matches(const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const
Compare the item against the search criteria in aSearchData.
bool Matches(const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const override
Compare the item against the search criteria in aSearchData.
wxString m_shortNetname
Short net name, like vout from /sheet/subsheet/vout.
void SetNetname(const wxString &aNewName)
Set the long netname to aNetName, the short netname to the last token in the long netname's path,...
NETINFO_ITEM(BOARD *aParent, const wxString &aNetName=wxEmptyString, int aNetCode=-1)
NETINFO_ITEM class, to handle info on nets: netnames, net constraints.
wxString m_displayNetname
Unescaped netname for display.
const wxString & GetNetname() const
void Clear()
Set all fields to their default values.
int m_netCode
A number equivalent to the net name.
std::shared_ptr< NETCLASS > m_netClass
void GetMsgPanelInfo(EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) override
Return the information about the NETINFO_ITEM in aList to display in the message panel.
bool HasAutoGeneratedNetname() const
wxString m_netname
Full net name like /sheet/subsheet/vout used by Eeschema.
const BOX2I GetBoundingBox() const override
Return the orthogonal bounding box of this object for display purposes.
bool m_isCurrent
Indicates the net is currently in use.
void SetNetClass(const std::shared_ptr< NETCLASS > &aNetClass)
BOARD * m_parent
The parent board the net belongs to.
std::shared_ptr< NETCLASS > GetDefaultNetclass()
Gets the default netclass for the project.
wxString MessageTextFromValue(double aValue, bool aAddUnitLabel=true, EDA_DATA_TYPE aType=EDA_DATA_TYPE::DISTANCE) const
A lower-precision version of StringFromValue().
Message panel definition file.
wxString UnescapeString(const wxString &aSource)
@ PCB_SHAPE_T
class PCB_SHAPE, a segment not on copper layers
@ PCB_VIA_T
class PCB_VIA, a via (like a track segment on a copper layer)
@ PCB_ZONE_T
class ZONE, a copper pour area
@ PCB_PAD_T
class PAD, a pad in a footprint
@ PCB_ARC_T
class PCB_ARC, an arc track segment on a copper layer
@ PCB_NETINFO_T
class NETINFO_ITEM, a description of a net
@ PCB_TRACE_T
class PCB_TRACK, a track segment (segment on a copper layer)