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

A FUNCTION (0x10) object represents a logical function, which is an instance of a single function slot within a symbol. More...

#include <allegro_db.h>

Inheritance diagram for ALLEGRO::FUNCTION_INSTANCE:
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

 FUNCTION_INSTANCE (const BLK_0x10_FUNCTION_INST &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 * GetName () const
 
const COMPONENT_INSTGetComponentInstance () const
 
const FUNCTION_SLOTGetFunctionSlot () const
 
TYPE GetType () const
 
uint32_t GetKey () const
 

Public Attributes

DB_REF m_Slot
 
DB_REF m_Fields
 
DB_STR_REF m_FunctionName
 
DB_REF m_ComponentInstance
 
bool m_Valid
 
TYPE m_Type
 
uint32_t m_Key
 
FILE_LOC m_Loc
 

Detailed Description

A FUNCTION (0x10) object represents a logical function, which is an instance of a single function slot within a symbol.

Definition at line 543 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

◆ FUNCTION_INSTANCE()

Member Function Documentation

◆ GetComponentInstance()

const COMPONENT_INST & FUNCTION_INSTANCE::GetComponentInstance ( ) const

◆ GetFunctionSlot()

const FUNCTION_SLOT & FUNCTION_INSTANCE::GetFunctionSlot ( ) const

Definition at line 1252 of file allegro_db.cpp.

References ALLEGRO::DB_OBJ::FUNCTION_SLOT, m_Slot, and THROW_IO_ERROR.

◆ GetKey()

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

◆ GetName()

const wxString * FUNCTION_INSTANCE::GetName ( ) const

Definition at line 1234 of file allegro_db.cpp.

References m_FunctionName.

◆ GetType()

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

◆ ResolveRefs()

bool FUNCTION_INSTANCE::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 1221 of file allegro_db.cpp.

References m_ComponentInstance, m_Fields, m_FunctionName, and m_Slot.

Member Data Documentation

◆ m_ComponentInstance

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_ComponentInstance

Definition at line 552 of file allegro_db.h.

Referenced by FUNCTION_INSTANCE(), GetComponentInstance(), and ResolveRefs().

◆ m_Fields

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_Fields

Definition at line 550 of file allegro_db.h.

Referenced by FUNCTION_INSTANCE(), and ResolveRefs().

◆ m_FunctionName

DB_STR_REF ALLEGRO::FUNCTION_INSTANCE::m_FunctionName

Definition at line 551 of file allegro_db.h.

Referenced by FUNCTION_INSTANCE(), GetName(), and ResolveRefs().

◆ 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_Slot

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_Slot

Definition at line 549 of file allegro_db.h.

Referenced by FUNCTION_INSTANCE(), GetFunctionSlot(), 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: