IDFstepper
IDF to STEP converter
Classes | Typedefs | Enumerations | Functions
idf Namespace Reference

Classes

struct  BoardPanelGrammar
 This is the Qi grammar to parse IDF board or panels files into BoardPanelStruct objects. More...
struct  LibraryGrammar
 This is the Qi grammar to parse IDF library files into LibraryStruct objects. More...
struct  Loop
 An outline/cutout loop. More...
struct  BoardPanelOutline
 A board/panel outline as a sequence of points connected by straight lines or arcs. More...
struct  OtherOutline
 An additional outline not related to the entities shape. More...
struct  RoutingOutline
 The routing outline of a board/panel. More...
struct  PlacementOutline
 The placement outline of a board/panel. More...
struct  RoutingKeepout
 The routing keepout area. More...
struct  ViaKeepout
 The via keepout area. More...
struct  PlacementKeepout
 The placement keepout area of a board/panel. More...
struct  PlacementGroupArea
 The placement group area of a board/panel for related components. More...
struct  DrilledHole
 A drilled hole of a board or panel. More...
struct  DrilledHoles
 The drilled holes of a board or panel. More...
struct  Note
 A single user-defined note. More...
struct  Notes
 User-defined notes. More...
struct  ComponentPlacement
 Placement information of a single component. More...
struct  ComponentPlacements
 Placement information for all components of a board. More...
struct  BoardPanelStruct
 The data structure representing an IDF board or panel file. More...
struct  Component
 Electrical or mechanical component. More...
struct  LibraryStruct
 The data structure representing an IDF library file. More...

Typedefs

typedef std::map< std::string,
std::string > 
Props
 A map containing key/value pairs for component properties.

Enumerations

enum  BoardPanelType { BOARD_FILE, PANEL_FILE }
 The actual file type for board/panel files. More...
enum  Unit { MM, THOU }
 The unit used for linear measures in the given file. More...
enum  Owner { MCAD, ECAD, UNOWNED }
 The owner of some entity. More...
enum  BoardSide { TOP_SIDE, BOTTOM_SIDE, BOTH_SIDES }
 A board side specifier. More...
enum  RoutingLayers {
  TOP_LAYER, BOTTOM_LAYER, BOTH_LAYERS, INNER_LAYERS,
  ALL_LAYERS
}
 Possible routing layers. More...
enum  PlatingStyle { PTH, NPTH }
 The plating style of a hole. More...
enum  PlacementStatus { PLACED, UNPLACED, PLACE_MCAD, PLACE_ECAD }
 The placement status of a component. More...
enum  ComponentType { ELECTRICAL, MECHANICAL }
 The type of a library component. More...

Functions

bool parseBoardPanel (std::string::const_iterator &iter, std::string::const_iterator end, BoardPanelStruct &idfStruct)
 Parses a stream of characters into a board/panel file.
bool parseLibrary (std::string::const_iterator &iter, std::string::const_iterator end, LibraryStruct &idfStruct)
 Parses a stream of characters into a library file.

Typedef Documentation

typedef std::map<std::string, std::string> idf::Props

A map containing key/value pairs for component properties.

Definition at line 15 of file IdfStructure.hpp.


Enumeration Type Documentation

The actual file type for board/panel files.

It is specified by the first field in record 2 of the file header section.

Enumerator:
BOARD_FILE 
PANEL_FILE 

Definition at line 21 of file IdfStructure.hpp.

A board side specifier.

Enumerator:
TOP_SIDE 
BOTTOM_SIDE 
BOTH_SIDES 

Definition at line 51 of file IdfStructure.hpp.

The type of a library component.

Enumerator:
ELECTRICAL 
MECHANICAL 

Definition at line 91 of file IdfStructure.hpp.

enum idf::Owner

The owner of some entity.

Enumerator:
MCAD 

Mechanical CAD.

ECAD 

Electrical CAD.

UNOWNED 

No owner, can be modified in either system.

Definition at line 39 of file IdfStructure.hpp.

The placement status of a component.

Enumerator:
PLACED 
UNPLACED 
PLACE_MCAD 
PLACE_ECAD 

Definition at line 81 of file IdfStructure.hpp.

The plating style of a hole.

Enumerator:
PTH 

Plated-through.

NPTH 

Non plated-through.

Definition at line 71 of file IdfStructure.hpp.

Possible routing layers.

Enumerator:
TOP_LAYER 
BOTTOM_LAYER 
BOTH_LAYERS 
INNER_LAYERS 
ALL_LAYERS 

Definition at line 60 of file IdfStructure.hpp.

enum idf::Unit

The unit used for linear measures in the given file.

Enumerator:
MM 

Millimeters.

THOU 

Mils (thousandths of an inch).

Definition at line 29 of file IdfStructure.hpp.


Function Documentation

bool idf::parseBoardPanel ( std::string::const_iterator &  iter,
std::string::const_iterator  end,
BoardPanelStruct &  idfStruct 
)

Parses a stream of characters into a board/panel file.

Both file types actually share the same structure, the type is only identified by the BOARD_FILE or PANEL_FILE in the section header.

Parameters:
iterIterator to first character to parse. This will be positioned to one past the last analyzed character at function return. All data has been parsed if iter == end after return.
endIterator to one-past-end element.
idfStructFile structure to be filled with parsed data.
Returns:
True if the data could be parsed (not necessarily *all* data), false otherwise.

Definition at line 7 of file IdfParser.cpp.

bool idf::parseLibrary ( std::string::const_iterator &  iter,
std::string::const_iterator  end,
LibraryStruct &  idfStruct 
)

Parses a stream of characters into a library file.

Parameters:
iterIterator to first character to parse. This will be positioned to one past the last analyzed character at function return. All data has been parsed if iter == end after return.
endIterator to one-past-end element.
idfStructFile structure to be filled with parsed data.
Returns:
True if the data could be parsed (not necessarily *all* data), false otherwise.

Definition at line 17 of file IdfParser.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines