TraceMaker
C++ API of the engine
Loading...
Searching...
No Matches
tmk::model::NetClass Struct Reference

#include <model/rules.hpp>

Public Attributes

std::string name
Coord clearance = 200'000
Coord track_width = 250'000
Coord via_diameter = 600'000
Coord via_drill = 300'000
Coord uvia_diameter = 300'000
Coord uvia_drill = 100'000
Coord diff_pair_width = 200'000
Coord diff_pair_gap = 250'000
Coord diff_pair_via_gap = 250'000
bool has_diff_pair_gap = false
 set explicitly in the project (not inherited)
int priority = 0
 lower value = higher priority (KiCad 9+); Default has INT_MAX
std::string tuning_profile
 KiCad 10: the name of the class's tuning profile ("" = none).
bool profile_from_default = false
 tuning_profile is Default's: the class names none (KiCad's addMissingDefaults)
std::uint16_t fields = 0
 Which of the ten parameters KiCad 10.0.6 fills from Default when unset (NET_SETTINGS::addMissingDefaults) the project sets for this class, one bit each in kNetClassFields order.
Coord tuning_pair_gap = 0
 Set by the route job for a differential tuning profile (doc 05 §58): the pair gap its pairs are routed at.

Static Public Attributes

static constexpr std::uint16_t kAllFields = 0x3ff

Detailed Description

Definition at line 15 of file rules.hpp.

Member Data Documentation

◆ clearance

Coord tmk::model::NetClass::clearance = 200'000

Definition at line 17 of file rules.hpp.

◆ diff_pair_gap

Coord tmk::model::NetClass::diff_pair_gap = 250'000

Definition at line 24 of file rules.hpp.

◆ diff_pair_via_gap

Coord tmk::model::NetClass::diff_pair_via_gap = 250'000

Definition at line 25 of file rules.hpp.

◆ diff_pair_width

Coord tmk::model::NetClass::diff_pair_width = 200'000

Definition at line 23 of file rules.hpp.

◆ fields

std::uint16_t tmk::model::NetClass::fields = 0

Which of the ten parameters KiCad 10.0.6 fills from Default when unset (NET_SETTINGS::addMissingDefaults) the project sets for this class, one bit each in kNetClassFields order.

A net whose classes leave one unset has Default among its effective class's constituents, which hasNetclass('Default') sees.

Definition at line 33 of file rules.hpp.

◆ has_diff_pair_gap

bool tmk::model::NetClass::has_diff_pair_gap = false

set explicitly in the project (not inherited)

Definition at line 26 of file rules.hpp.

◆ kAllFields

std::uint16_t tmk::model::NetClass::kAllFields = 0x3ff
staticconstexpr

Definition at line 34 of file rules.hpp.

◆ name

std::string tmk::model::NetClass::name

Definition at line 16 of file rules.hpp.

◆ priority

int tmk::model::NetClass::priority = 0

lower value = higher priority (KiCad 9+); Default has INT_MAX

Definition at line 27 of file rules.hpp.

◆ profile_from_default

bool tmk::model::NetClass::profile_from_default = false

tuning_profile is Default's: the class names none (KiCad's addMissingDefaults)

Definition at line 29 of file rules.hpp.

◆ track_width

Coord tmk::model::NetClass::track_width = 250'000

Definition at line 18 of file rules.hpp.

◆ tuning_pair_gap

Coord tmk::model::NetClass::tuning_pair_gap = 0

Set by the route job for a differential tuning profile (doc 05 §58): the pair gap its pairs are routed at.

Like KiCad's profile rule as KiCad 10.0.6 applies it, it relaxes the clearance between the coupled halves' tracks only, not between a track and the partner's pads (the class's diff_pair_gap still does that). 0 = none.

Definition at line 38 of file rules.hpp.

◆ tuning_profile

std::string tmk::model::NetClass::tuning_profile

KiCad 10: the name of the class's tuning profile ("" = none).

Definition at line 28 of file rules.hpp.

◆ uvia_diameter

Coord tmk::model::NetClass::uvia_diameter = 300'000

Definition at line 21 of file rules.hpp.

◆ uvia_drill

Coord tmk::model::NetClass::uvia_drill = 100'000

Definition at line 22 of file rules.hpp.

◆ via_diameter

Coord tmk::model::NetClass::via_diameter = 600'000

Definition at line 19 of file rules.hpp.

◆ via_drill

Coord tmk::model::NetClass::via_drill = 300'000

Definition at line 20 of file rules.hpp.


The documentation for this struct was generated from the following file: