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

Classes

struct  LayerDef
struct  Net
struct  Pad
struct  Graphic
struct  Text
struct  Footprint
struct  Track
struct  ArcTrack
struct  Via
struct  Zone
struct  Board
struct  NetlistComponent
struct  NetlistNode
struct  NetlistNet
struct  Netlist
struct  NetClass
struct  BoardMinimums
struct  Constraint
 One constraint inside a custom rule, e.g. (constraint clearance (min 0.2mm)). More...
struct  CustomRule
struct  DesignRules
struct  StackupLayer
struct  DielectricGap
 The dielectric between two adjacent copper layers, combined over every stackup layer between them. More...
struct  Stackup
struct  Box
struct  Point

Typedefs

using NetId = std::int32_t
 0 = no net
using LayerMask = std::uint64_t
 bit i = copper layer i in stack order (0 = F.Cu, last = B.Cu)

Enumerations

enum class  PadType : std::uint8_t { Smd , ThruHole , NpThruHole , Connect }
enum class  PadShape : std::uint8_t {
  Circle , Rect , Oval , Trapezoid ,
  RoundRect , ChamferedRect , Custom
}
enum class  ZoneConnect : std::int8_t {
  Inherited = -1 , None = 0 , Thermal = 1 , Full = 2 ,
  ThtThermal = 3
}
 How a pad joins a zone of its net (KiCad's ZONE_CONNECTION; the file stores these numbers). More...
enum class  ViaType : std::uint8_t { Through , Blind , Micro }

Functions

constexpr LayerMask layer_bit (int copper_index)
bool wildcard_match (std::string_view pattern, std::string_view text)
 KiCad net-class pattern match: shell-style wildcards (* and ?), case-sensitive.
bool pattern_match (const std::string &pattern, const std::string &text)
 Net-class pattern: wildcard match or full regular-expression match (KiCad accepts both).

Typedef Documentation

◆ LayerMask

using tmk::model::LayerMask = std::uint64_t

bit i = copper layer i in stack order (0 = F.Cu, last = B.Cu)

Definition at line 22 of file board.hpp.

◆ NetId

using tmk::model::NetId = std::int32_t

0 = no net

Definition at line 21 of file board.hpp.

Enumeration Type Documentation

◆ PadShape

enum class tmk::model::PadShape : std::uint8_t
strong
Enumerator
Circle 
Rect 
Oval 
Trapezoid 
RoundRect 
ChamferedRect 
Custom 

Definition at line 42 of file board.hpp.

◆ PadType

enum class tmk::model::PadType : std::uint8_t
strong
Enumerator
Smd 
ThruHole 
NpThruHole 
Connect 

Definition at line 41 of file board.hpp.

◆ ViaType

enum class tmk::model::ViaType : std::uint8_t
strong
Enumerator
Through 
Blind 
Micro 

Definition at line 148 of file board.hpp.

◆ ZoneConnect

enum class tmk::model::ZoneConnect : std::int8_t
strong

How a pad joins a zone of its net (KiCad's ZONE_CONNECTION; the file stores these numbers).

Enumerator
Inherited 
None 
Thermal 
Full 
ThtThermal 

Definition at line 45 of file board.hpp.

Function Documentation

◆ layer_bit()

LayerMask tmk::model::layer_bit ( int copper_index)
inlineconstexpr

Definition at line 24 of file board.hpp.

◆ pattern_match()

bool tmk::model::pattern_match ( const std::string & pattern,
const std::string & text )

Net-class pattern: wildcard match or full regular-expression match (KiCad accepts both).

◆ wildcard_match()

bool tmk::model::wildcard_match ( std::string_view pattern,
std::string_view text )

KiCad net-class pattern match: shell-style wildcards (* and ?), case-sensitive.