KiCad PCB EDA Suite
Loading...
Searching...
No Matches
ALLEGRO::FOOTPRINT_DEF Struct Reference

0x2B objects More...

#include <allegro_db.h>

Inheritance diagram for ALLEGRO::FOOTPRINT_DEF:
ALLEGRO::DB_OBJ

Public Types

enum class  TYPE {
  ARC , FIELD , TRACK , NET_ASSIGN ,
  COMPONENT , COMPONENT_INST , PIN_NUMBER , x0e_RECT ,
  FUNCTION_SLOT , FUNCTION_INST , PIN_NAME , XREF ,
  GRAPHIC_SEG , LINE , NET , x20 ,
  SHAPE , FP_DEF , FP_INST , CONNECTION ,
  PLACED_PAD , VIA , KEEPOUT , x35 ,
  x36 , x37 , FILM_LAYER_LIST , FILM ,
  x3b , x3c
}
 

Public Member Functions

 FOOTPRINT_DEF (const BRD_DB &aBrd, const BLK_0x2B_FOOTPRINT_DEF &aBlk)
 
bool ResolveRefs (const DB_OBJ_RESOLVER &aResolver) override
 Called when all objects in the DB are read and can be resolved by their IDs by other objects.
 
const wxString * GetLibPath () const
 Get the library path for this footprint definition.
 
TYPE GetType () const
 
uint32_t GetKey () const
 

Public Attributes

DB_REF m_Next
 
DB_STR_REF m_FpStr
 
DB_REF m_SymLibPath
 
DB_REF_CHAIN m_Instances
 
bool m_Valid
 
TYPE m_Type
 
uint32_t m_Key
 
FILE_LOC m_Loc
 

Detailed Description

0x2B objects

Definition at line 701 of file allegro_db.h.

Member Enumeration Documentation

◆ TYPE

enum class ALLEGRO::DB_OBJ::TYPE
stronginherited
Enumerator
ARC 
FIELD 
TRACK 
NET_ASSIGN 
COMPONENT 
COMPONENT_INST 
PIN_NUMBER 
x0e_RECT 
FUNCTION_SLOT 
FUNCTION_INST 
PIN_NAME 
XREF 
GRAPHIC_SEG 
LINE 
NET 
x20 
SHAPE 
FP_DEF 
FP_INST 
CONNECTION 
PLACED_PAD 
VIA 
KEEPOUT 
x35 
x36 
x37 
FILM_LAYER_LIST 
FILM 
x3b 
x3c 

Definition at line 163 of file allegro_db.h.

Constructor & Destructor Documentation

◆ FOOTPRINT_DEF()

Member Function Documentation

◆ GetKey()

uint32_t ALLEGRO::DB_OBJ::GetKey ( ) const
inlineinherited

◆ GetLibPath()

const wxString * FOOTPRINT_DEF::GetLibPath ( ) const

Get the library path for this footprint definition.

For example: C:/OrCAD/OrCAD_16.6_Lite/share/pcb/pcb_lib/symbols/res2012x50n_0805.psm

This can be empty, for example for DRAFTING type footprints like dimensions.

Definition at line 1089 of file allegro_db.cpp.

References ALLEGRO::FIELD::ExpectString(), ALLEGRO::DB_OBJ::FIELD, and m_SymLibPath.

◆ GetType()

TYPE ALLEGRO::DB_OBJ::GetType ( ) const
inlineinherited

◆ ResolveRefs()

bool FOOTPRINT_DEF::ResolveRefs ( const DB_OBJ_RESOLVER & aResolver)
overridevirtual

Called when all objects in the DB are read and can be resolved by their IDs by other objects.

Exactly what fields a given object needs to resolve and what happens if the resolution fails is up to that object.

This can also validate that the objects found are of the expected types.

Before calling this, you cannot expect an DB_REF to have a valid target.

Returns
true if all fields in the object are resolved and valid

Implements ALLEGRO::DB_OBJ.

Definition at line 1062 of file allegro_db.cpp.

References CheckTypeIs(), ALLEGRO::DB_OBJ::DB_OBJ(), ALLEGRO::DB_OBJ::GetKey(), m_FpStr, m_Instances, m_Next, ALLEGRO::FOOTPRINT_INSTANCE::m_Parent, and m_SymLibPath.

Member Data Documentation

◆ m_FpStr

DB_STR_REF ALLEGRO::FOOTPRINT_DEF::m_FpStr

Definition at line 706 of file allegro_db.h.

Referenced by FOOTPRINT_DEF(), and ResolveRefs().

◆ m_Instances

DB_REF_CHAIN ALLEGRO::FOOTPRINT_DEF::m_Instances

◆ m_Key

◆ m_Loc

FILE_LOC ALLEGRO::DB_OBJ::m_Loc
inherited

Definition at line 243 of file allegro_db.h.

Referenced by DB_OBJ().

◆ m_Next

DB_REF ALLEGRO::FOOTPRINT_DEF::m_Next

Definition at line 705 of file allegro_db.h.

Referenced by FOOTPRINT_DEF(), ResolveRefs(), and ALLEGRO::BRD_DB::VisitFootprintDefs().

◆ m_SymLibPath

DB_REF ALLEGRO::FOOTPRINT_DEF::m_SymLibPath

Definition at line 707 of file allegro_db.h.

Referenced by FOOTPRINT_DEF(), GetLibPath(), and ResolveRefs().

◆ m_Type

TYPE ALLEGRO::DB_OBJ::m_Type
inherited

Definition at line 239 of file allegro_db.h.

Referenced by DB_OBJ(), and GetType().

◆ m_Valid

bool ALLEGRO::DB_OBJ::m_Valid
inherited

Definition at line 237 of file allegro_db.h.

Referenced by DB_OBJ().


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