KiCad PCB EDA Suite
class_aperture_macro.h File Reference
#include <vector>
#include <set>
#include <base_struct.h>
#include <class_am_param.h>
#include <class_eda_rect.h>

Go to the source code of this file.

Classes

class  AM_PRIMITIVE
 Struct AM_PRIMITIVE holds an aperture macro primitive as given in Table 3 of http://gerbv.sourceforge.net/docs/rs274xrevd_e.pdf. More...
 
struct  APERTURE_MACRO
 Struct APERTURE_MACRO helps support the "aperture macro" defined within standard RS274X. More...
 
struct  APERTURE_MACRO_less_than
 Struct APERTURE_MACRO_less_than is used by std:set<APERTURE_MACRO> instantiation which uses APERTURE_MACRO.name as its key. More...
 

Typedefs

typedef std::vector< AM_PRIMITIVEAM_PRIMITIVES
 
typedef std::set< APERTURE_MACRO, APERTURE_MACRO_less_thanAPERTURE_MACRO_SET
 Type APERTURE_MACRO_SET is a sorted collection of APERTURE_MACROS whose key is the name field in the APERTURE_MACRO. More...
 
typedef std::pair< APERTURE_MACRO_SET::iterator, bool > APERTURE_MACRO_SET_PAIR
 

Enumerations

enum  AM_PRIMITIVE_ID {
  AMP_UNKNOWN = -1, AMP_COMMENT = 0, AMP_CIRCLE = 1, AMP_LINE2 = 2,
  AMP_LINE20 = 20, AMP_LINE_CENTER = 21, AMP_LINE_LOWER_LEFT = 22, AMP_EOF = 3,
  AMP_OUTLINE = 4, AMP_POLYGON = 5, AMP_MOIRE = 6, AMP_THERMAL = 7
}
 Enum AM_PRIMITIVE_ID is the set of all "aperture macro primitives" (primitive numbers). More...
 

Typedef Documentation

typedef std::vector<AM_PRIMITIVE> AM_PRIMITIVES

Definition at line 155 of file class_aperture_macro.h.

Type APERTURE_MACRO_SET is a sorted collection of APERTURE_MACROS whose key is the name field in the APERTURE_MACRO.

Definition at line 256 of file class_aperture_macro.h.

typedef std::pair<APERTURE_MACRO_SET::iterator, bool> APERTURE_MACRO_SET_PAIR

Definition at line 257 of file class_aperture_macro.h.

Enumeration Type Documentation

Enum AM_PRIMITIVE_ID is the set of all "aperture macro primitives" (primitive numbers).

See Table 3 in http://gerbv.sourceforge.net/docs/rs274xrevd_e.pdf aperture macro primitives are basic shapes which can be combined to create a complex shape This complex shape is flashed.

Enumerator
AMP_UNKNOWN 
AMP_COMMENT 
AMP_CIRCLE 
AMP_LINE2 
AMP_LINE20 
AMP_LINE_CENTER 
AMP_LINE_LOWER_LEFT 
AMP_EOF 
AMP_OUTLINE 
AMP_POLYGON 
AMP_MOIRE 
AMP_THERMAL 

Definition at line 71 of file class_aperture_macro.h.

71  {
72  AMP_UNKNOWN = -1, // A value for uninitialized AM_PRIMITIVE.
73  AMP_COMMENT = 0, // A primitive description is not really a primitive, this is a comment
74  AMP_CIRCLE = 1, // Circle. (diameter and position)
75  AMP_LINE2 = 2, // Line with rectangle ends. (Width, start and end pos + rotation)
76  AMP_LINE20 = 20, // Same as AMP_LINE2
77  AMP_LINE_CENTER = 21, // Rectangle. (height, width and center pos + rotation)
78  AMP_LINE_LOWER_LEFT = 22, // Rectangle. (height, width and left bottom corner pos + rotation)
79  AMP_EOF = 3, // End Of File marquer: not really a shape
80  AMP_OUTLINE = 4, // Free polyline (n corners + rotation)
81  AMP_POLYGON = 5, // Closed regular polygon(diameter, number of vertices (3 to 10), rotation)
82  AMP_MOIRE = 6, // A cross hair with n concentric circles + rotation
83  AMP_THERMAL = 7 // Thermal shape (pos, outer and inner diameter, cross hair thickness + rotation)
84 };