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

UI wrapper for an ungrounded coplanar waveguide. More...

#include <coplanar.h>

Inheritance diagram for COPLANAR_UI:
TRANSLINE GROUNDEDCOPLANAR_UI

Public Member Functions

 COPLANAR_UI ()
 
void setProperty (enum PRMS_ID aPrmId, double aValue)
 
double getProperty (enum PRMS_ID aPrmId)
 
void SetExtraParameter (enum EXTRA_PRMS_ID aPrmId, double aValue)
 Setter for panel-level parameters that are shared across every calculator type.
 
void checkProperties ()
 @function checkProperties
 
void setResult (int, double, const char *)
 
void setResult (int, const char *)
 
bool isSelected (enum PRMS_ID aPrmId)
 
void Init ()
 
virtual void synthesize ()
 
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

void getProperties () override
 Pushes back-metal flag and common UI parameters into the calculator.
 
double skin_depth ()
 @function skin_depth calculate skin depth
 
void setErrorLevel (PRMS_ID, char)
 @function setErrorLevel
 
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)
 Converts a TRANSLINE_PARAMETER status to a PCB Calculation status.
 

Protected Attributes

COPLANAR m_calc
 
double m_parameters [EXTRA_PRMS_COUNT]
 

Private Member Functions

void show_results () override
 Shows results.
 
void showAnalyze () override
 Shows synthesis results and checks for errors / warnings.
 
void showSynthesize () override
 Shows analysis results and checks for errors / warnings.
 
void calcAnalyze () override
 Computation for analysis.
 
void calcSynthesize () override
 Computation for synthesis.
 

Detailed Description

UI wrapper for an ungrounded coplanar waveguide.

The math lives in the shared COPLANAR class; this class only shuttles parameters between the legacy UI array and the calculator.

Definition at line 38 of file pcb_calculator/transline/coplanar.h.

Constructor & Destructor Documentation

◆ COPLANAR_UI()

COPLANAR_UI::COPLANAR_UI ( )

Definition at line 30 of file pcb_calculator/transline/coplanar.cpp.

References TRANSLINE::Init(), and TRANSLINE::m_Name.

Member Function Documentation

◆ analyze()

void TRANSLINE::analyze ( )
inherited

◆ calcAnalyze()

void COPLANAR_UI::calcAnalyze ( )
overrideprivatevirtual

Computation for analysis.

Reimplemented from TRANSLINE.

Definition at line 81 of file pcb_calculator/transline/coplanar.cpp.

References m_calc.

◆ calcSynthesize()

void COPLANAR_UI::calcSynthesize ( )
overrideprivatevirtual

Computation for synthesis.

Reimplemented from TRANSLINE.

Definition at line 87 of file pcb_calculator/transline/coplanar.cpp.

References DEFAULT, and m_calc.

◆ checkProperties()

void TRANSLINE::checkProperties ( )
inherited

@function checkProperties

Checks the input parameters (ie: negative length). Does not check for incompatibility between values as this depends on the line shape.

Definition at line 168 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)
inherited

Definition at line 139 of file transline.cpp.

References GetPropertyInDialog().

Referenced by getProperties().

◆ Init()

◆ isSelected()

◆ pushSoldermaskParameters()

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

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 313 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 )
inlineinherited

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

Definition at line 98 of file transline.h.

References m_parameters.

◆ setProperty()

◆ setResult() [1/2]

void TRANSLINE::setResult ( int line,
const char * text )
inherited

Definition at line 126 of file transline.cpp.

References SetResultInDialog(), and text.

◆ setResult() [2/2]

◆ show_results()

void COPLANAR_UI::show_results ( )
overrideprivatevirtual

◆ showAnalyze()

void COPLANAR_UI::showAnalyze ( )
overrideprivatevirtual

Shows synthesis results and checks for errors / warnings.

Reimplemented from TRANSLINE.

Definition at line 93 of file pcb_calculator/transline/coplanar.cpp.

References ANG_L, ANG_L_PRM, TRANSLINE::convertParameterStatusCode(), m_calc, PHYS_LEN, PHYS_LEN_PRM, PHYS_S, PHYS_S_PRM, PHYS_WIDTH, PHYS_WIDTH_PRM, TRANSLINE::setErrorLevel(), TRANSLINE::setProperty(), Z0, and Z0_PRM.

◆ showSynthesize()

void COPLANAR_UI::showSynthesize ( )
overrideprivatevirtual

◆ skin_depth()

double TRANSLINE::skin_depth ( )
protectedinherited

@function skin_depth calculate skin depth

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

Definition at line 267 of file transline.cpp.

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

Referenced by getProperties().

◆ synthesize()

void TRANSLINE::synthesize ( )
virtualinherited

Member Data Documentation

◆ errCol

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

Definition at line 137 of file transline.h.

Referenced by setErrorLevel().

◆ m_calc

◆ m_Name

◆ m_parameters

◆ okCol

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

Definition at line 139 of file transline.h.

Referenced by Init(), and setErrorLevel().

◆ warnCol

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

Definition at line 138 of file transline.h.

Referenced by setErrorLevel().


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