24#ifndef PCB_NEW_TUNING_PROFILE_PARAMETERS_USER_DEFINED_H
25#define PCB_NEW_TUNING_PROFILE_PARAMETERS_USER_DEFINED_H
52 std::vector<int64_t>
GetPropagationDelays(
const std::vector<LENGTH_DELAY_CALCULATION_ITEM>& aItems,
Information pertinent to a Pcbnew printed circuit board.
Lightweight class which holds a pad, via, or a routed trace outline.
Class which calculates lengths (and associated routing statistics) in a BOARD context.
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
TUNING_PROFILE_PARAMETERS_IFACE(BOARD *aBoard, LENGTH_DELAY_CALCULATION *aCalculation)
std::map< wxString, const TUNING_PROFILE * > m_delayProfilesCache
Cached map of tuning profile names to per-layer time domain parameters.
int64_t GetTrackLengthForPropagationDelay(int64_t aDelay, const TUNING_PROFILE_GEOMETRY_CONTEXT &aContext) override
Gets the track length (in internal distance units) required for the given propagation delay (in inter...
const TUNING_PROFILE * GetTuningProfile(const wxString &aDelayProfileName)
Gets the tuning profile pointer for the given tuning profile name.
int64_t CalculatePropagationDelayForShapeLineChain(const SHAPE_LINE_CHAIN &aShape, const TUNING_PROFILE_GEOMETRY_CONTEXT &aContext) override
Gets the propagation delay for the given shape line chain.
std::map< wxString, std::map< VIA_OVERRIDE_CACHE_KEY, int64_t > > m_viaOverridesCache
Cached per-tuning profile via overrides.
int64_t GetPropagationDelay(const LENGTH_DELAY_CALCULATION_ITEM &aItem, const TUNING_PROFILE_GEOMETRY_CONTEXT &aContext) override
Gets the propagation delay (in internal units) for the given item in the given geometry context.
void OnSettingsChanged() override
Event called by the length and time calculation architecture if netclass definitions have changed.
std::vector< int64_t > GetPropagationDelays(const std::vector< LENGTH_DELAY_CALCULATION_ITEM > &aItems, const TUNING_PROFILE_GEOMETRY_CONTEXT &aContext) override
Gets the propagation delays (in internal units) for the given items in the given geometry context.
int64_t getPropagationDelay(const LENGTH_DELAY_CALCULATION_ITEM &aItem, const TUNING_PROFILE_GEOMETRY_CONTEXT &aContext, const TUNING_PROFILE *aDelayProfile) const
Gets the propagation delay (in internal units) for the given item in the given geometry context,...
TUNING_PROFILE_PARAMETERS_USER_DEFINED(BOARD *aBoard, LENGTH_DELAY_CALCULATION *aCalculation)
PCB_LAYER_ID
A quick note on layer IDs:
A data structure to contain basic geometry data which can affect signal propagation calculations.
Cache key for use with std::map.
bool operator<(const VIA_OVERRIDE_CACHE_KEY &aOther) const
Represents a single line in the tuning profile configuration grid.