KiCad PCB EDA Suite
Loading...
Searching...
No Matches
SHEET_SYNCHRONIZATION_AGENT Class Reference

Agent for all the modifications while syncing the sheet pin and hierarchical label. More...

#include <sheet_synchronization_agent.h>

Public Types

enum  SHEET_SYNCHRONIZATION_PLACEMENT { PLACE_SHEET_PIN , PLACE_HIERLABEL }
 
using DO_DELETE_ITEM = std::function<void( EDA_ITEM*, SCH_SHEET_PATH )>
 
using MODIFICATION = std::function<void()>
 
using DO_MODIFY_ITEM = std::function<void( EDA_ITEM*, SCH_SHEET_PATH, MODIFICATION const& )>
 
using DO_PLACE_ITEM
 

Public Member Functions

 SHEET_SYNCHRONIZATION_AGENT (DO_MODIFY_ITEM aDoModify, DO_DELETE_ITEM aDoDelete, DO_PLACE_ITEM aPlaceItem, TOOL_MANAGER *aToolManager, SCH_EDIT_FRAME *a_frame)
 
 ~SHEET_SYNCHRONIZATION_AGENT ()
 
void ModifyItem (SHEET_SYNCHRONIZATION_ITEM &aItem, std::function< void()> const &aDoModify, const SCH_SHEET_PATH &aPath)
 
void ModifyItem (SCH_ITEM *aItem, std::function< void()> const &aDoModify, const SCH_SHEET_PATH &aPath, SHEET_SYNCHRONIZATION_ITEM_KIND aKind)
 
void RemoveItem (SHEET_SYNCHRONIZATION_ITEM &aItem, SCH_SHEET *aSheet, SCH_SHEET_PATH const &aPath)
 
void PlaceSheetPin (SCH_SHEET *aSheet, SCH_SHEET_PATH const &aPath, std::set< EDA_ITEM * > const &aLabels)
 
void PlaceHieraLable (SCH_SHEET *aSheet, SCH_SHEET_PATH const &aPath, std::set< EDA_ITEM * > const &aPins)
 

Private Attributes

DO_MODIFY_ITEM m_doModify
 
DO_DELETE_ITEM m_doDelete
 
DO_PLACE_ITEM m_doPlaceItem
 

Detailed Description

Agent for all the modifications while syncing the sheet pin and hierarchical label.

Definition at line 46 of file sheet_synchronization_agent.h.

Member Typedef Documentation

◆ DO_DELETE_ITEM

Definition at line 55 of file sheet_synchronization_agent.h.

◆ DO_MODIFY_ITEM

Definition at line 59 of file sheet_synchronization_agent.h.

◆ DO_PLACE_ITEM

Initial value:
std::set<EDA_ITEM*> const& )>
Handle access to a stack of flattened SCH_SHEET objects by way of a path for creating a flattened sch...
Sheet symbol placed in a schematic, and is the entry point for a sub schematic.
Definition sch_sheet.h:47

Definition at line 61 of file sheet_synchronization_agent.h.

◆ MODIFICATION

using SHEET_SYNCHRONIZATION_AGENT::MODIFICATION = std::function<void()>

Definition at line 57 of file sheet_synchronization_agent.h.

Member Enumeration Documentation

◆ SHEET_SYNCHRONIZATION_PLACEMENT

Enumerator
PLACE_SHEET_PIN 
PLACE_HIERLABEL 

Definition at line 49 of file sheet_synchronization_agent.h.

Constructor & Destructor Documentation

◆ SHEET_SYNCHRONIZATION_AGENT()

SHEET_SYNCHRONIZATION_AGENT::SHEET_SYNCHRONIZATION_AGENT ( DO_MODIFY_ITEM aDoModify,
DO_DELETE_ITEM aDoDelete,
DO_PLACE_ITEM aPlaceItem,
TOOL_MANAGER * aToolManager,
SCH_EDIT_FRAME * a_frame )

Definition at line 33 of file sheet_synchronization_agent.cpp.

References m_doDelete, m_doModify, m_doPlaceItem, and move.

◆ ~SHEET_SYNCHRONIZATION_AGENT()

SHEET_SYNCHRONIZATION_AGENT::~SHEET_SYNCHRONIZATION_AGENT ( )
default

Member Function Documentation

◆ ModifyItem() [1/2]

void SHEET_SYNCHRONIZATION_AGENT::ModifyItem ( SCH_ITEM * aItem,
std::function< void()> const & aDoModify,
const SCH_SHEET_PATH & aPath,
SHEET_SYNCHRONIZATION_ITEM_KIND aKind )

◆ ModifyItem() [2/2]

void SHEET_SYNCHRONIZATION_AGENT::ModifyItem ( SHEET_SYNCHRONIZATION_ITEM & aItem,
std::function< void()> const & aDoModify,
const SCH_SHEET_PATH & aPath )

◆ PlaceHieraLable()

void SHEET_SYNCHRONIZATION_AGENT::PlaceHieraLable ( SCH_SHEET * aSheet,
SCH_SHEET_PATH const & aPath,
std::set< EDA_ITEM * > const & aPins )

Definition at line 120 of file sheet_synchronization_agent.cpp.

References m_doPlaceItem, and PLACE_HIERLABEL.

◆ PlaceSheetPin()

void SHEET_SYNCHRONIZATION_AGENT::PlaceSheetPin ( SCH_SHEET * aSheet,
SCH_SHEET_PATH const & aPath,
std::set< EDA_ITEM * > const & aLabels )

◆ RemoveItem()

Member Data Documentation

◆ m_doDelete

DO_DELETE_ITEM SHEET_SYNCHRONIZATION_AGENT::m_doDelete
private

Definition at line 89 of file sheet_synchronization_agent.h.

Referenced by RemoveItem(), and SHEET_SYNCHRONIZATION_AGENT().

◆ m_doModify

DO_MODIFY_ITEM SHEET_SYNCHRONIZATION_AGENT::m_doModify
private

Definition at line 88 of file sheet_synchronization_agent.h.

Referenced by ModifyItem(), and SHEET_SYNCHRONIZATION_AGENT().

◆ m_doPlaceItem

DO_PLACE_ITEM SHEET_SYNCHRONIZATION_AGENT::m_doPlaceItem
private

The documentation for this class was generated from the following files: