| 
    KiCad PCB EDA Suite
    
   | 
 
Data model for display in the Net Inspector panel. More...
#include <pcb_net_inspector_panel_data_model.h>
 Public Member Functions | |
| DATA_MODEL (PCB_NET_INSPECTOR_PANEL &parent) | |
| unsigned int | columnCount () const | 
| unsigned int | itemCount () const | 
| wxVariant | valueAt (unsigned int aCol, unsigned int aRow) const | 
| const LIST_ITEM & | itemAt (unsigned int aRow) const | 
| std::vector< std::pair< wxString, wxDataViewItem > > | getGroupDataViewItems () | 
| std::optional< LIST_ITEM_ITER > | findItem (int aNetCode) | 
| std::optional< LIST_ITEM_ITER > | findItem (NETINFO_ITEM *aNet) | 
| std::optional< LIST_ITEM_ITER > | findGroupItem (int aGroupNumber) | 
| LIST_ITEM * | addGroup (LIST_ITEM_ITER groupsBegin, LIST_ITEM_ITER groupsEnd, wxString groupName, LIST_ITEM::GROUP_TYPE groupType) | 
| std::optional< LIST_ITEM_ITER > | addItem (std::unique_ptr< LIST_ITEM > aItem) | 
| void | addItems (std::vector< std::unique_ptr< LIST_ITEM > > &aItems) | 
| std::unique_ptr< LIST_ITEM > | deleteItem (const std::optional< LIST_ITEM_ITER > &aRow) | 
| void | addCustomGroups () | 
| Adds all custom group-by entries to the items table.   | |
| void | deleteAllItems () | 
| void | updateItem (const std::optional< LIST_ITEM_ITER > &aRow) | 
| void | updateAllItems () | 
| void | resortIfChanged (LIST_ITEM *aItem) | 
| bool | itemColumnChanged (const LIST_ITEM *aItem, unsigned int aCol) const | 
| void | SetIsTimeDomain (const bool aIsTimeDomain) | 
Protected Member Functions | |
| unsigned int | GetColumnCount () const override | 
| void | GetValue (wxVariant &aOutValue, const wxDataViewItem &aItem, unsigned int aCol) const override | 
| int | Compare (const wxDataViewItem &aItem1, const wxDataViewItem &aItem2, unsigned int aCol, bool aAsc) const override | 
| bool | SetValue (const wxVariant &aInValue, const wxDataViewItem &aItem, unsigned int aCol) override | 
| wxDataViewItem | GetParent (const wxDataViewItem &aItem) const override | 
| bool | IsContainer (const wxDataViewItem &aItem) const override | 
| bool | HasContainerColumns (const wxDataViewItem &aItem) const override | 
| unsigned int | GetChildren (const wxDataViewItem &aParent, wxDataViewItemArray &aChildren) const override | 
| wxString | GetColumnType (unsigned int) const override | 
Static Protected Member Functions | |
| static int | compareUInt (int64_t aValue1, int64_t aValue2, bool aAsc) | 
Private Attributes | |
| PCB_NET_INSPECTOR_PANEL & | m_parent | 
| std::vector< std::unique_ptr< LIST_ITEM > > | m_items | 
| std::map< wxString, LIST_ITEM * > | m_custom_group_map | 
| Map of custom group names to their representative list item.   | |
| bool | m_show_time_domain_details { false } | 
Data model for display in the Net Inspector panel.
Definition at line 538 of file pcb_net_inspector_panel_data_model.h.
      
  | 
  inline | 
Definition at line 541 of file pcb_net_inspector_panel_data_model.h.
References m_parent, and PCB_NET_INSPECTOR_PANEL::PCB_NET_INSPECTOR_PANEL().
      
  | 
  inline | 
Adds all custom group-by entries to the items table.
Note this assumes that m_items is empty prior to adding these groups
Definition at line 725 of file pcb_net_inspector_panel_data_model.h.
References group, m_custom_group_map, m_items, m_parent, and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::USER_DEFINED.
      
  | 
  inline | 
Definition at line 601 of file pcb_net_inspector_panel_data_model.h.
References group, and m_items.
Referenced by addItem().
      
  | 
  inline | 
Definition at line 623 of file pcb_net_inspector_panel_data_model.h.
References addGroup(), group, m_custom_group_map, m_items, m_parent, and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::NETCLASS.
Referenced by addItems().
      
  | 
  inline | 
Definition at line 676 of file pcb_net_inspector_panel_data_model.h.
      
  | 
  inline | 
Definition at line 545 of file pcb_net_inspector_panel_data_model.h.
References m_parent.
Referenced by GetColumnCount().
      
  | 
  inlineoverrideprotected | 
Definition at line 914 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::COLUMN_BOARD_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_LAST_STATIC_COL, PCB_NET_INSPECTOR_PANEL::COLUMN_NAME, PCB_NET_INSPECTOR_PANEL::COLUMN_NETCLASS, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_DIE_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_TOTAL_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_LENGTH, compareUInt(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetBoardWireDelay(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetBoardWireLength(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetIsGroup(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetLayerWireDelay(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetLayerWireLength(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetNetclassName(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetNetName(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetPadCount(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetPadDieDelay(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetPadDieLength(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetTotalDelay(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetTotalLength(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetViaCount(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetViaDelay(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetViaLength(), m_parent, m_show_time_domain_details, res, and ValueStringCompare().
      
  | 
  inlinestaticprotected | 
Definition at line 906 of file pcb_net_inspector_panel_data_model.h.
Referenced by Compare().
      
  | 
  inline | 
Definition at line 741 of file pcb_net_inspector_panel_data_model.h.
References m_items.
      
  | 
  inline | 
Definition at line 684 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ChildrenCount(), m_items, m_parent, and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::Parent().
      
  | 
  inline | 
Definition at line 590 of file pcb_net_inspector_panel_data_model.h.
References m_items.
      
  | 
  inline | 
Definition at line 571 of file pcb_net_inspector_panel_data_model.h.
References m_items.
Referenced by findItem().
      
  | 
  inline | 
Definition at line 582 of file pcb_net_inspector_panel_data_model.h.
References findItem(), and NETINFO_ITEM::GetNetCode().
      
  | 
  inlineoverrideprotected | 
Definition at line 1039 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ChildrenBegin(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ChildrenCount(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ChildrenEnd(), end, PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetIsGroup(), and m_items.
      
  | 
  inlineoverrideprotected | 
Definition at line 823 of file pcb_net_inspector_panel_data_model.h.
References columnCount().
      
  | 
  inlineoverrideprotected | 
Definition at line 1074 of file pcb_net_inspector_panel_data_model.h.
      
  | 
  inline | 
Definition at line 558 of file pcb_net_inspector_panel_data_model.h.
References m_items.
Referenced by PCB_NET_INSPECTOR_PANEL::buildNetsList().
      
  | 
  inlineoverrideprotected | 
Definition at line 1018 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::LIST_ITEM::Parent().
      
  | 
  inlineoverrideprotected | 
Definition at line 825 of file pcb_net_inspector_panel_data_model.h.
References _, PCB_NET_INSPECTOR_PANEL::COLUMN_BOARD_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_LAST_STATIC_COL, PCB_NET_INSPECTOR_PANEL::COLUMN_NAME, PCB_NET_INSPECTOR_PANEL::COLUMN_NETCLASS, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_DIE_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_TOTAL_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_LENGTH, m_parent, m_show_time_domain_details, PCB_NET_INSPECTOR_PANEL::LIST_ITEM::NETCLASS, and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::USER_DEFINED.
Referenced by valueAt().
      
  | 
  inlineoverrideprotected | 
Definition at line 1034 of file pcb_net_inspector_panel_data_model.h.
References IsContainer().
      
  | 
  inlineoverrideprotected | 
Definition at line 1026 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::LIST_ITEM::GetIsGroup().
Referenced by HasContainerColumns().
      
  | 
  inline | 
Definition at line 556 of file pcb_net_inspector_panel_data_model.h.
References m_items.
      
  | 
  inline | 
Definition at line 785 of file pcb_net_inspector_panel_data_model.h.
References PCB_NET_INSPECTOR_PANEL::LIST_ITEM::BoardWireLengthChanged(), PCB_NET_INSPECTOR_PANEL::COLUMN_BOARD_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_LAST_STATIC_COL, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_PAD_DIE_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_TOTAL_LENGTH, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_COUNT, PCB_NET_INSPECTOR_PANEL::COLUMN_VIA_LENGTH, m_parent, PCB_NET_INSPECTOR_PANEL::LIST_ITEM::PadCountChanged(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::PadDieLengthChanged(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::TotalLengthChanged(), PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ViaCountChanged(), and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::ViaLengthChanged().
Referenced by resortIfChanged().
      
  | 
  inline | 
Definition at line 547 of file pcb_net_inspector_panel_data_model.h.
References m_items.
      
  | 
  inline | 
Definition at line 768 of file pcb_net_inspector_panel_data_model.h.
References itemColumnChanged(), m_parent, and PCB_NET_INSPECTOR_PANEL::LIST_ITEM::Parent().
Referenced by updateItem().
      
  | 
  inline | 
Definition at line 815 of file pcb_net_inspector_panel_data_model.h.
References m_show_time_domain_details.
      
  | 
  inlineoverrideprotected | 
Definition at line 1012 of file pcb_net_inspector_panel_data_model.h.
      
  | 
  inline | 
Definition at line 762 of file pcb_net_inspector_panel_data_model.h.
References m_items.
      
  | 
  inline | 
Definition at line 748 of file pcb_net_inspector_panel_data_model.h.
References resortIfChanged().
      
  | 
  inline | 
Definition at line 549 of file pcb_net_inspector_panel_data_model.h.
References GetValue(), and m_items.
      
  | 
  private | 
Map of custom group names to their representative list item.
Definition at line 1085 of file pcb_net_inspector_panel_data_model.h.
Referenced by addCustomGroups(), and addItem().
      
  | 
  private | 
Definition at line 1082 of file pcb_net_inspector_panel_data_model.h.
Referenced by addCustomGroups(), addGroup(), addItem(), addItems(), deleteAllItems(), deleteItem(), findGroupItem(), findItem(), GetChildren(), getGroupDataViewItems(), itemAt(), itemCount(), updateAllItems(), and valueAt().
      
  | 
  private | 
Definition at line 1077 of file pcb_net_inspector_panel_data_model.h.
Referenced by addCustomGroups(), addItem(), columnCount(), Compare(), DATA_MODEL(), deleteItem(), GetValue(), itemColumnChanged(), and resortIfChanged().
      
  | 
  private | 
Definition at line 1087 of file pcb_net_inspector_panel_data_model.h.
Referenced by Compare(), GetValue(), and SetIsTimeDomain().