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::BRD_DB_OBJ ALLEGRO::DB_OBJ

Public Types

using TYPE_ID = uint8_t
 

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 char * TypeName () const override
 
const wxString * GetName () const
 
const COMPONENT_INSTGetComponentInstance () const
 
const FUNCTION_SLOTGetFunctionSlot () const
 
TYPE_ID GetType () const override
 All blocks are denoted by a type which allows dispatch to the appropriate subclass.
 
BRD_TYPE GetBrdType () const
 
uint32_t GetKey () const
 
virtual const DB_REFGetNext () const
 Return the reference to the next object in the default chain for this object.
 

Public Attributes

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

Private Attributes

BRD_TYPE m_Type
 

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 607 of file allegro_db.h.

Member Typedef Documentation

◆ TYPE_ID

using ALLEGRO::DB_OBJ::TYPE_ID = uint8_t
inherited

Definition at line 169 of file allegro_db.h.

Constructor & Destructor Documentation

◆ FUNCTION_INSTANCE()

FUNCTION_INSTANCE::FUNCTION_INSTANCE ( const BLK_0x10_FUNCTION_INST & aBlk)

Member Function Documentation

◆ GetBrdType()

BRD_TYPE ALLEGRO::BRD_DB_OBJ::GetBrdType ( ) const
inlineinherited

Definition at line 369 of file allegro_db.h.

References m_Type.

◆ GetComponentInstance()

const COMPONENT_INST & FUNCTION_INSTANCE::GetComponentInstance ( ) const

Definition at line 1188 of file allegro_db.cpp.

References m_ComponentInstance, and THROW_IO_ERROR.

◆ GetFunctionSlot()

const FUNCTION_SLOT & FUNCTION_INSTANCE::GetFunctionSlot ( ) const

Definition at line 1200 of file allegro_db.cpp.

References 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 1182 of file allegro_db.cpp.

References m_FunctionName.

◆ GetNext()

virtual const DB_REF & ALLEGRO::DB_OBJ::GetNext ( ) const
inlinevirtualinherited

Return the reference to the next object in the default chain for this object.

Some methods of iterating use other "nexts" in the object, fo those you should use the appropriate field instead of this method.

Reimplemented in ALLEGRO::PTR_ARRAY.

Definition at line 227 of file allegro_db.h.

References m_Next.

Referenced by GetPrimaryNext().

◆ GetType()

TYPE_ID ALLEGRO::BRD_DB_OBJ::GetType ( ) const
inlineoverridevirtualinherited

All blocks are denoted by a type which allows dispatch to the appropriate subclass.

Implements ALLEGRO::DB_OBJ.

Definition at line 364 of file allegro_db.h.

References m_Type.

◆ 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 1169 of file allegro_db.cpp.

References m_ComponentInstance, m_Fields, m_FunctionName, and m_Slot.

◆ TypeName()

const char * ALLEGRO::FUNCTION_INSTANCE::TypeName ( ) const
inlineoverridevirtual

Reimplemented from ALLEGRO::DB_OBJ.

Definition at line 613 of file allegro_db.h.

Member Data Documentation

◆ m_ComponentInstance

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_ComponentInstance

Definition at line 618 of file allegro_db.h.

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

◆ m_Fields

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_Fields

Definition at line 616 of file allegro_db.h.

Referenced by FUNCTION_INSTANCE(), and ResolveRefs().

◆ m_FunctionName

DB_STR_REF ALLEGRO::FUNCTION_INSTANCE::m_FunctionName

Definition at line 617 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 237 of file allegro_db.h.

Referenced by DB_OBJ().

◆ m_Next

DB_REF ALLEGRO::DB_OBJ::m_Next
inherited

Definition at line 239 of file allegro_db.h.

Referenced by ALLEGRO::ARC::ARC(), ALLEGRO::COMPONENT::COMPONENT(), ALLEGRO::COMPONENT_INST::COMPONENT_INST(), ALLEGRO::CONNECTION_OBJ::CONNECTION_OBJ(), DB_OBJ(), ALLEGRO::FIELD::FIELD(), ALLEGRO::FOOTPRINT_DEF::FOOTPRINT_DEF(), ALLEGRO::FOOTPRINT_INSTANCE::FOOTPRINT_INSTANCE(), GetNext(), ALLEGRO::PTR_ARRAY::GetNext(), ALLEGRO::COMPONENT_INST::GetNextInstance(), ALLEGRO::GRAPHIC_SEG::GRAPHIC_SEG(), ALLEGRO::LINE::LINE(), ALLEGRO::NET::NET(), ALLEGRO::NET_ASSIGN::NET_ASSIGN(), ALLEGRO::PIN_NAME::PIN_NAME(), ALLEGRO::PIN_NUMBER::PIN_NUMBER(), ALLEGRO::PLACED_PAD::PLACED_PAD(), ALLEGRO::PTR_ARRAY::PTR_ARRAY(), ALLEGRO::RECT_OBJ::RECT_OBJ(), ALLEGRO::ARC::ResolveRefs(), ALLEGRO::COMPONENT::ResolveRefs(), ALLEGRO::COMPONENT_INST::ResolveRefs(), ALLEGRO::CONNECTION_OBJ::ResolveRefs(), ALLEGRO::FOOTPRINT_DEF::ResolveRefs(), ALLEGRO::FOOTPRINT_INSTANCE::ResolveRefs(), ALLEGRO::GRAPHIC_SEG::ResolveRefs(), ALLEGRO::LINE::ResolveRefs(), ALLEGRO::NET::ResolveRefs(), ALLEGRO::NET_ASSIGN::ResolveRefs(), ALLEGRO::PIN_NAME::ResolveRefs(), ALLEGRO::PIN_NUMBER::ResolveRefs(), ALLEGRO::PLACED_PAD::ResolveRefs(), ALLEGRO::PTR_ARRAY::ResolveRefs(), ALLEGRO::RECT_OBJ::ResolveRefs(), ALLEGRO::SHAPE::ResolveRefs(), ALLEGRO::TRACK::ResolveRefs(), ALLEGRO::UNKNOWN_0x20::ResolveRefs(), ALLEGRO::VIA::ResolveRefs(), ALLEGRO::SHAPE::SHAPE(), ALLEGRO::TRACK::TRACK(), ALLEGRO::UNKNOWN_0x20::UNKNOWN_0x20(), ALLEGRO::VIA::VIA(), ALLEGRO::BRD_DB::VisitComponents(), ALLEGRO::BRD_DB::VisitFootprintDefs(), and ALLEGRO::BRD_DB::VisitNets().

◆ m_Slot

DB_REF ALLEGRO::FUNCTION_INSTANCE::m_Slot

Definition at line 615 of file allegro_db.h.

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

◆ m_Type

BRD_TYPE ALLEGRO::BRD_DB_OBJ::m_Type
privateinherited

Definition at line 372 of file allegro_db.h.

Referenced by BRD_DB_OBJ(), GetBrdType(), and GetType().

◆ m_Valid

bool ALLEGRO::DB_OBJ::m_Valid
inherited

Definition at line 233 of file allegro_db.h.

Referenced by DB_OBJ().


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