KiCad PCB EDA Suite
ERULES Struct Reference

subset of eagle.drawing.board.designrules in the XML document More...

#include <eagle_plugin.h>

Public Member Functions

 ERULES ()
 
void parse (wxXmlNode *aRules)
 percent over 100%. More...
 

Public Attributes

int psElongationLong
 
int psElongationOffset
 the offset of the hole within the "long" pad. More...
 
double mvStopFrame
 solderpaste mask, expressed as percentage of the smaller pad/via dimension More...
 
double mvCreamFrame
 
int mlMinStopFrame
 solder mask, minimum size (Eagle mils, here nanometers) More...
 
int mlMaxStopFrame
 solder mask, maximum size (Eagle mils, here nanometers) More...
 
int mlMinCreamFrame
 solder paste mask, minimum size (Eagle mils, here nanometers) More...
 
int mlMaxCreamFrame
 solder paste mask, maximum size (Eagle mils, here nanometers) More...
 
int psTop
 Shape of the top pads. More...
 
int psBottom
 Shape of the bottom pads. More...
 
int psFirst
 Shape of the first pads. More...
 
double srRoundness
 corner rounding ratio for SMD pads (percentage) More...
 
int srMinRoundness
 corner rounding radius, maximum size (Eagle mils, here nanometers) More...
 
int srMaxRoundness
 
double rvPadTop
 top pad size as percent of drill size More...
 
double rlMinPadTop
 minimum copper annulus on through hole pads More...
 
double rlMaxPadTop
 maximum copper annulus on through hole pads More...
 
double rvViaOuter
 copper annulus is this percent of via hole More...
 
double rlMinViaOuter
 minimum copper annulus on via More...
 
double rlMaxViaOuter
 maximum copper annulus on via More...
 
double mdWireWire
 wire to wire spacing I presume. More...
 

Detailed Description

subset of eagle.drawing.board.designrules in the XML document

Definition at line 49 of file eagle_plugin.h.

Constructor & Destructor Documentation

◆ ERULES()

ERULES::ERULES ( )
inline

Definition at line 51 of file eagle_plugin.h.

51  :
52  psElongationLong ( 100 ),
53  psElongationOffset ( 0 ),
54 
55  mvStopFrame ( 1.0 ),
56  mvCreamFrame ( 0.0 ),
57  mlMinStopFrame ( Mils2iu( 4.0 ) ),
58  mlMaxStopFrame ( Mils2iu( 4.0 ) ),
59  mlMinCreamFrame ( Mils2iu( 0.0 ) ),
60  mlMaxCreamFrame ( Mils2iu( 0.0 ) ),
61 
62  psTop ( EPAD::UNDEF ),
64  psFirst ( EPAD::UNDEF ),
65 
66  srRoundness ( 0.0 ),
67  srMinRoundness ( Mils2iu( 0.0 ) ),
68  srMaxRoundness ( Mils2iu( 0.0 ) ),
69 
70  rvPadTop ( 0.25 ),
71  // rvPadBottom ( 0.25 ),
72  rlMinPadTop ( Mils2iu( 10 ) ),
73  rlMaxPadTop ( Mils2iu( 20 ) ),
74 
75  rvViaOuter ( 0.25 ),
76  rlMinViaOuter ( Mils2iu( 10 ) ),
77  rlMaxViaOuter ( Mils2iu( 20 ) ),
78  mdWireWire ( 0 )
79  {}
double rlMaxViaOuter
maximum copper annulus on via
Definition: eagle_plugin.h:119
int psTop
Shape of the top pads.
Definition: eagle_plugin.h:99
double rlMaxPadTop
maximum copper annulus on through hole pads
Definition: eagle_plugin.h:115
int mlMinStopFrame
solder mask, minimum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:94
int srMinRoundness
corner rounding radius, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:106
double rvViaOuter
copper annulus is this percent of via hole
Definition: eagle_plugin.h:117
int psElongationOffset
the offset of the hole within the "long" pad.
Definition: eagle_plugin.h:87
double mdWireWire
wire to wire spacing I presume.
Definition: eagle_plugin.h:120
double srRoundness
corner rounding ratio for SMD pads (percentage)
Definition: eagle_plugin.h:103
int psElongationLong
Definition: eagle_plugin.h:85
int psFirst
Shape of the first pads.
Definition: eagle_plugin.h:101
int mlMinCreamFrame
solder paste mask, minimum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:96
double mvStopFrame
solderpaste mask, expressed as percentage of the smaller pad/via dimension
Definition: eagle_plugin.h:90
double rvPadTop
top pad size as percent of drill size
Definition: eagle_plugin.h:111
int psBottom
Shape of the bottom pads.
Definition: eagle_plugin.h:100
double rlMinPadTop
minimum copper annulus on through hole pads
Definition: eagle_plugin.h:114
double rlMinViaOuter
minimum copper annulus on via
Definition: eagle_plugin.h:118
int mlMaxCreamFrame
solder paste mask, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:97
int srMaxRoundness
Definition: eagle_plugin.h:109
int mlMaxStopFrame
solder mask, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:95
double mvCreamFrame
Definition: eagle_plugin.h:93

Member Function Documentation

◆ parse()

void ERULES::parse ( wxXmlNode *  aRules)

percent over 100%.

0-> not elongated, 100->twice as wide as is tall Goes into making a scaling factor for "long" pads.

Definition at line 205 of file eagle_plugin.cpp.

206 {
207  wxXmlNode* child = aRules->GetChildren();
208 
209  while( child )
210  {
211  if( child->GetName() == "param" )
212  {
213  const wxString& name = child->GetAttribute( "name" );
214  const wxString& value = child->GetAttribute( "value" );
215 
216  if( name == "psElongationLong" )
217  psElongationLong = wxAtoi( value );
218  else if( name == "psElongationOffset" )
219  psElongationOffset = wxAtoi( value );
220 
221  else if( name == "mvStopFrame" )
222  value.ToCDouble( &mvStopFrame );
223  else if( name == "mvCreamFrame" )
224  value.ToCDouble( &mvCreamFrame );
225  else if( name == "mlMinStopFrame" )
226  mlMinStopFrame = parseEagle( value );
227  else if( name == "mlMaxStopFrame" )
228  mlMaxStopFrame = parseEagle( value );
229  else if( name == "mlMinCreamFrame" )
230  mlMinCreamFrame = parseEagle( value );
231  else if( name == "mlMaxCreamFrame" )
232  mlMaxCreamFrame = parseEagle( value );
233 
234  else if( name == "srRoundness" )
235  value.ToCDouble( &srRoundness );
236  else if( name == "srMinRoundness" )
237  srMinRoundness = parseEagle( value );
238  else if( name == "srMaxRoundness" )
239  srMaxRoundness = parseEagle( value );
240 
241  else if( name == "psTop" )
242  psTop = wxAtoi( value );
243  else if( name == "psBottom" )
244  psBottom = wxAtoi( value );
245  else if( name == "psFirst" )
246  psFirst = wxAtoi( value );
247 
248  else if( name == "rvPadTop" )
249  value.ToCDouble( &rvPadTop );
250  else if( name == "rlMinPadTop" )
251  rlMinPadTop = parseEagle( value );
252  else if( name == "rlMaxPadTop" )
253  rlMaxPadTop = parseEagle( value );
254 
255  else if( name == "rvViaOuter" )
256  value.ToCDouble( &rvViaOuter );
257  else if( name == "rlMinViaOuter" )
258  rlMinViaOuter = parseEagle( value );
259  else if( name == "rlMaxViaOuter" )
260  rlMaxViaOuter = parseEagle( value );
261  else if( name == "mdWireWire" )
262  mdWireWire = parseEagle( value );
263  }
264 
265  child = child->GetNext();
266  }
267 }
double rlMaxViaOuter
maximum copper annulus on via
Definition: eagle_plugin.h:119
int psTop
Shape of the top pads.
Definition: eagle_plugin.h:99
double rlMaxPadTop
maximum copper annulus on through hole pads
Definition: eagle_plugin.h:115
int mlMinStopFrame
solder mask, minimum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:94
static int parseEagle(const wxString &aDistance)
Parse an eagle distance which is either mm, or mils if there is "mil" suffix.
int srMinRoundness
corner rounding radius, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:106
double rvViaOuter
copper annulus is this percent of via hole
Definition: eagle_plugin.h:117
int psElongationOffset
the offset of the hole within the "long" pad.
Definition: eagle_plugin.h:87
double mdWireWire
wire to wire spacing I presume.
Definition: eagle_plugin.h:120
double srRoundness
corner rounding ratio for SMD pads (percentage)
Definition: eagle_plugin.h:103
int psElongationLong
Definition: eagle_plugin.h:85
int psFirst
Shape of the first pads.
Definition: eagle_plugin.h:101
int mlMinCreamFrame
solder paste mask, minimum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:96
const char * name
Definition: DXF_plotter.cpp:59
double mvStopFrame
solderpaste mask, expressed as percentage of the smaller pad/via dimension
Definition: eagle_plugin.h:90
double rvPadTop
top pad size as percent of drill size
Definition: eagle_plugin.h:111
int psBottom
Shape of the bottom pads.
Definition: eagle_plugin.h:100
double rlMinPadTop
minimum copper annulus on through hole pads
Definition: eagle_plugin.h:114
double rlMinViaOuter
minimum copper annulus on via
Definition: eagle_plugin.h:118
int mlMaxCreamFrame
solder paste mask, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:97
int srMaxRoundness
Definition: eagle_plugin.h:109
int mlMaxStopFrame
solder mask, maximum size (Eagle mils, here nanometers)
Definition: eagle_plugin.h:95
double mvCreamFrame
Definition: eagle_plugin.h:93

References name, and parseEagle().

Referenced by EAGLE_PLUGIN::loadDesignRules().

Member Data Documentation

◆ mdWireWire

double ERULES::mdWireWire

wire to wire spacing I presume.

Definition at line 120 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::Load().

◆ mlMaxCreamFrame

int ERULES::mlMaxCreamFrame

solder paste mask, maximum size (Eagle mils, here nanometers)

Definition at line 97 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().

◆ mlMaxStopFrame

int ERULES::mlMaxStopFrame

solder mask, maximum size (Eagle mils, here nanometers)

Definition at line 95 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::transferPad().

◆ mlMinCreamFrame

int ERULES::mlMinCreamFrame

solder paste mask, minimum size (Eagle mils, here nanometers)

Definition at line 96 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().

◆ mlMinStopFrame

int ERULES::mlMinStopFrame

solder mask, minimum size (Eagle mils, here nanometers)

Definition at line 94 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::transferPad().

◆ mvCreamFrame

double ERULES::mvCreamFrame

Definition at line 93 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().

◆ mvStopFrame

double ERULES::mvStopFrame

solderpaste mask, expressed as percentage of the smaller pad/via dimension

Definition at line 90 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::transferPad().

◆ psBottom

int ERULES::psBottom

Shape of the bottom pads.

Definition at line 100 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ psElongationLong

int ERULES::psElongationLong

Definition at line 85 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ psElongationOffset

int ERULES::psElongationOffset

the offset of the hole within the "long" pad.

solder mask, expressed as percentage of the smaller pad/via dimension

Definition at line 87 of file eagle_plugin.h.

◆ psFirst

int ERULES::psFirst

Shape of the first pads.

Definition at line 101 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ psTop

int ERULES::psTop

Shape of the top pads.

Definition at line 99 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ rlMaxPadTop

double ERULES::rlMaxPadTop

maximum copper annulus on through hole pads

Definition at line 115 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ rlMaxViaOuter

double ERULES::rlMaxViaOuter

maximum copper annulus on via

Definition at line 119 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::loadSignals().

◆ rlMinPadTop

double ERULES::rlMinPadTop

minimum copper annulus on through hole pads

Definition at line 114 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ rlMinViaOuter

double ERULES::rlMinViaOuter

minimum copper annulus on via

Definition at line 118 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::loadSignals().

◆ rvPadTop

double ERULES::rvPadTop

top pad size as percent of drill size

Definition at line 111 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packagePad().

◆ rvViaOuter

double ERULES::rvViaOuter

copper annulus is this percent of via hole

Definition at line 117 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::loadSignals().

◆ srMaxRoundness

int ERULES::srMaxRoundness

Definition at line 109 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().

◆ srMinRoundness

int ERULES::srMinRoundness

corner rounding radius, maximum size (Eagle mils, here nanometers)

Definition at line 106 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().

◆ srRoundness

double ERULES::srRoundness

corner rounding ratio for SMD pads (percentage)

corner rounding radius, minimum size (Eagle mils, here nanometers)

Definition at line 103 of file eagle_plugin.h.

Referenced by EAGLE_PLUGIN::packageSMD().


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