21#ifndef SCH_MERGE_APPLIER_H
22#define SCH_MERGE_APPLIER_H
112 std::map<KIID_PATH, PathedItem>
114 std::vector<std::unique_ptr<SCH_SHEET_PATH>>& aStorage )
const;
117 const std::vector<PROPERTY_RESOLUTION>& aProps,
bool Apply()
Apply the plan to the ancestor.
const SCHEMATIC * m_theirs
SCH_MERGE_APPLIER(SCHEMATIC *aAncestor, const SCHEMATIC *aOurs, const SCHEMATIC *aTheirs, MERGE_PLAN aPlan)
std::map< KIID_PATH, PathedItem > indexSchematic(const SCHEMATIC *aSchematic, std::vector< std::unique_ptr< SCH_SHEET_PATH > > &aStorage) const
Walk a schematic into a KIID_PATH-keyed table of (item, sheet_path).
std::size_t applyPropertyResolutions(SCH_ITEM *aTarget, const std::vector< PROPERTY_RESOLUTION > &aProps, const SCH_ITEM *aOurs, const SCH_ITEM *aTheirs, const SCH_ITEM *aAncestor)
const REPORT & GetReport() const
Holds all the data relating to one schematic.
Base class for any item which can be embedded within the SCHEMATIC container class,...
Handle access to a stack of flattened SCH_SHEET objects by way of a path for creating a flattened sch...
Result of planning a 3-way merge.
SCH_SHEET_PATH * sheetPath
bool drawingSheetFileTouched
std::size_t itemsTakenTheirs
std::size_t propertiesApplied
std::size_t itemsMergedProps
bool requiresConnectivityRebuild
bool projectFileTouched
True iff the applier resolved state that lives in the .kicad_pro.
bool ercSeveritiesTouched
std::size_t sheetActionsSkipped
Number of actions skipped because they targeted a SCH_SHEET.
bool connectivityRebuildPerformed
True iff the caller performed connectivity recomputation after the applier finished.
VALIDATION_REPORT validation
Post-apply validator pipeline result.
std::size_t itemsTakenOurs
std::size_t propertiesFailed