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

#include <transline.h>

Inheritance diagram for TRANSLINE:
COAX_UI COPLANAR_UI C_MICROSTRIP C_STRIPLINE MICROSTRIP_UI RECTWAVEGUIDE_UI STRIPLINE_UI TWISTEDPAIR_UI

Public Member Functions

 TRANSLINE ()
 
virtual ~TRANSLINE ()
 
void setProperty (enum PRMS_ID aPrmId, double aValue)
 Set a named property to the given value, access through the application.
 
double getProperty (enum PRMS_ID aPrmId)
 Return a property value.
 
void SetExtraParameter (enum EXTRA_PRMS_ID aPrmId, double aValue)
 Setter for panel-level parameters that are shared across every calculator type.
 
virtual void getProperties ()
 Get all properties from the UI.
 
void checkProperties ()
 Check the input parameters (ie: negative length).
 
void setResult (int aLine, double aValue, const char *aText)
 Put the text into the given result line.
 
void setResult (int aLine, const char *aText)
 
bool isSelected (enum PRMS_ID aPrmId)
 Return true if the param aPrmId is selected.
 
void Init ()
 
virtual void synthesize ()
 
virtual void calcAnalyze ()
 Computation for analysis.
 
virtual void calcSynthesize ()
 Computation for synthesis.
 
virtual void showAnalyze ()
 Show synthesis results and checks for errors / warnings.
 
virtual void showSynthesize ()
 Show analysis results and checks for errors / warnings.
 
virtual void show_results ()
 Show results.
 
void analyze ()
 

Public Attributes

const char * m_Name
 
KIGFX::COLOR4D errCol = KIGFX::COLOR4D( 1, 0.63, 0.63, 1 )
 
KIGFX::COLOR4D warnCol = KIGFX::COLOR4D( 1, 1, 0.57, 1 )
 
KIGFX::COLOR4D okCol = KIGFX::COLOR4D( 1, 1, 1, 1 )
 

Protected Member Functions

double skin_depth ()
 Calculate skin depth.
 
void setErrorLevel (PRMS_ID, char)
 Set an error / warning level for a given parameter.
 
void pushSoldermaskParameters (TRANSLINE_CALCULATION_BASE &aCalc, bool aIncludeFillsGaps=false) const
 Push the mask-eligible subset of soldermask parameters (PRESENT, THICKNESS, EPSILONR, TAND) into the supplied calculator.
 

Static Protected Member Functions

static char convertParameterStatusCode (TRANSLINE_STATUS aStatus)
 Convert a TRANSLINE_STATUS status to a PCB Calculation status.
 

Protected Attributes

double m_parameters [EXTRA_PRMS_COUNT]
 

Detailed Description

Definition at line 85 of file transline.h.

Constructor & Destructor Documentation

◆ TRANSLINE()

TRANSLINE::TRANSLINE ( )

Definition at line 67 of file transline.cpp.

References Init(), m_Name, m_parameters, and MURC_PRM.

◆ ~TRANSLINE()

TRANSLINE::~TRANSLINE ( )
virtual

Definition at line 75 of file transline.cpp.

Member Function Documentation

◆ analyze()

void TRANSLINE::analyze ( )

◆ calcAnalyze()

virtual void TRANSLINE::calcAnalyze ( )
inlinevirtual

Computation for analysis.

Reimplemented in C_MICROSTRIP, C_STRIPLINE, COAX_UI, COPLANAR_UI, MICROSTRIP_UI, RECTWAVEGUIDE_UI, STRIPLINE_UI, and TWISTEDPAIR_UI.

Definition at line 137 of file transline.h.

Referenced by analyze().

◆ calcSynthesize()

virtual void TRANSLINE::calcSynthesize ( )
inlinevirtual

Computation for synthesis.

Reimplemented in C_MICROSTRIP, C_STRIPLINE, COAX_UI, COPLANAR_UI, MICROSTRIP_UI, RECTWAVEGUIDE_UI, STRIPLINE_UI, and TWISTEDPAIR_UI.

Definition at line 142 of file transline.h.

Referenced by synthesize().

◆ checkProperties()

void TRANSLINE::checkProperties ( )

Check the input parameters (ie: negative length).

Does not check for incompatibility between values as this depends on the line shape.

Definition at line 154 of file transline.cpp.

References EPSILONR_PRM, FREQUENCY_PRM, H_PRM, H_T_PRM, m_parameters, MUR_PRM, MURC_PRM, RHO_PRM, setErrorLevel(), STRIPLINE_A_PRM, T_PRM, TAND_PRM, TRANSLINE_WARNING, TWISTEDPAIR_EPSILONR_ENV_PRM, and TWISTEDPAIR_TWIST_PRM.

Referenced by analyze(), and synthesize().

◆ convertParameterStatusCode()

◆ getProperties()

◆ getProperty()

double TRANSLINE::getProperty ( enum PRMS_ID aPrmId)

Return a property value.

Definition at line 134 of file transline.cpp.

References GetPropertyInDialog().

Referenced by getProperties().

◆ Init()

◆ isSelected()

bool TRANSLINE::isSelected ( enum PRMS_ID aPrmId)

◆ pushSoldermaskParameters()

void TRANSLINE::pushSoldermaskParameters ( TRANSLINE_CALCULATION_BASE & aCalc,
bool aIncludeFillsGaps = false ) const
protected

Push the mask-eligible subset of soldermask parameters (PRESENT, THICKNESS, EPSILONR, TAND) into the supplied calculator.

Callers that need the CPW-only FILLS_GAPS flag pass aIncludeFillsGaps = true. Mask-ineligible calculators (stripline, coax, waveguide, twisted pair) do not override GetSoldermaskFillingG so these writes are harmless no-ops on those backends; this helper is purely a deduplication aid for the four eligible subclasses (microstrip, c_microstrip, coplanar).

Definition at line 284 of file transline.cpp.

References m_parameters, TRANSLINE_CALCULATION_BASE::SetParameter(), SOLDERMASK_EPSILONR, SOLDERMASK_EPSILONR_PRM, SOLDERMASK_FILLS_GAPS, SOLDERMASK_FILLS_GAPS_PRM, SOLDERMASK_PRESENT, SOLDERMASK_PRESENT_PRM, SOLDERMASK_TAND, SOLDERMASK_TAND_PRM, SOLDERMASK_THICKNESS, and SOLDERMASK_THICKNESS_PRM.

Referenced by C_MICROSTRIP::getProperties(), COPLANAR_UI::getProperties(), and MICROSTRIP_UI::getProperties().

◆ setErrorLevel()

◆ SetExtraParameter()

void TRANSLINE::SetExtraParameter ( enum EXTRA_PRMS_ID aPrmId,
double aValue )
inline

Setter for panel-level parameters that are shared across every calculator type.

Definition at line 104 of file transline.h.

References m_parameters.

◆ setProperty()

◆ setResult() [1/2]

void TRANSLINE::setResult ( int aLine,
const char * aText )

Definition at line 122 of file transline.cpp.

References SetResultInDialog().

◆ setResult() [2/2]

◆ show_results()

virtual void TRANSLINE::show_results ( )
inlinevirtual

Show results.

Reimplemented in C_MICROSTRIP, C_STRIPLINE, COAX_UI, COPLANAR_UI, MICROSTRIP_UI, RECTWAVEGUIDE_UI, STRIPLINE_UI, and TWISTEDPAIR_UI.

Definition at line 157 of file transline.h.

Referenced by analyze(), and synthesize().

◆ showAnalyze()

virtual void TRANSLINE::showAnalyze ( )
inlinevirtual

Show synthesis results and checks for errors / warnings.

Reimplemented in C_MICROSTRIP, C_STRIPLINE, COAX_UI, COPLANAR_UI, MICROSTRIP_UI, RECTWAVEGUIDE_UI, STRIPLINE_UI, and TWISTEDPAIR_UI.

Definition at line 147 of file transline.h.

Referenced by analyze().

◆ showSynthesize()

virtual void TRANSLINE::showSynthesize ( )
inlinevirtual

Show analysis results and checks for errors / warnings.

Reimplemented in C_MICROSTRIP, C_STRIPLINE, COAX_UI, COPLANAR_UI, MICROSTRIP_UI, RECTWAVEGUIDE_UI, STRIPLINE_UI, and TWISTEDPAIR_UI.

Definition at line 152 of file transline.h.

Referenced by synthesize().

◆ skin_depth()

double TRANSLINE::skin_depth ( )
protected

Calculate skin depth.

$ \frac{1}{\sqrt{ \pi \cdot f \cdot \mu \cdot \sigma }} $

Definition at line 250 of file transline.cpp.

References FREQUENCY_PRM, m_parameters, M_PI, MU0, MURC_PRM, and SIGMA_PRM.

Referenced by getProperties().

◆ synthesize()

void TRANSLINE::synthesize ( )
virtual

Member Data Documentation

◆ errCol

KIGFX::COLOR4D TRANSLINE::errCol = KIGFX::COLOR4D( 1, 0.63, 0.63, 1 )

Definition at line 161 of file transline.h.

Referenced by setErrorLevel().

◆ m_Name

◆ m_parameters

◆ okCol

KIGFX::COLOR4D TRANSLINE::okCol = KIGFX::COLOR4D( 1, 1, 1, 1 )

Definition at line 163 of file transline.h.

Referenced by Init(), and setErrorLevel().

◆ warnCol

KIGFX::COLOR4D TRANSLINE::warnCol = KIGFX::COLOR4D( 1, 1, 0.57, 1 )

Definition at line 162 of file transline.h.

Referenced by setErrorLevel().


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