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

Polygon shape defined by a linked list of segments starting at m_FirstSegmentPtr (0x15/0x16/0x17 lines and 0x01 arcs). More...

#include <allegro_pcb_structs.h>

Public Member Functions

uint32_t GetTablePtr () const
 

Public Attributes

uint8_t m_Type
 
LAYER_INFO m_Layer
 
uint32_t m_Key
 
uint32_t m_Next
 
uint32_t m_Ptr1
 
uint32_t m_Unknown1
 
COND_GE< FMT_VER::V_172, uint32_t > m_Unknown2
 
COND_GE< FMT_VER::V_172, uint32_t > m_Unknown3
 
uint32_t m_Ptr2
 
uint32_t m_Ptr3
 
uint32_t m_FirstKeepoutPtr
 
uint32_t m_FirstSegmentPtr
 
uint32_t m_Unknown4
 
uint32_t m_Unknown5
 
COND_GE< FMT_VER::V_172, uint32_t > m_TablePtr
 
uint32_t m_Ptr6
 
COND_LT< FMT_VER::V_172, uint32_t > m_TablePtr_16x
 
std::array< int32_t, 4 > m_Coords
 

Static Public Attributes

static constexpr uint8_t BLOCK_TYPE_CODE = 0x28
 

Detailed Description

Polygon shape defined by a linked list of segments starting at m_FirstSegmentPtr (0x15/0x16/0x17 lines and 0x01 arcs).

Used for zone outlines (BOUNDARY class on m_LL_Shapes), computed copper fills (on net assignment chains), board outline, keepout areas, place bounds, and custom pad shapes (shape symbol type 0x16).

Zone net resolution follows m_Ptr7 (V172+) or m_Ptr7_16x (pre-V172) through a 0x2C TABLE and 0x37 pointer array to reach the owning 0x1B NET.

Definition at line 1740 of file allegro_pcb_structs.h.

Member Function Documentation

◆ GetTablePtr()

uint32_t ALLEGRO::BLK_0x28_SHAPE::GetTablePtr ( ) const
inline

Definition at line 1769 of file allegro_pcb_structs.h.

References m_TablePtr, and m_TablePtr_16x.

Referenced by ALLEGRO::BOARD_BUILDER::getShapeRelatedBlocks().

Member Data Documentation

◆ BLOCK_TYPE_CODE

uint8_t ALLEGRO::BLK_0x28_SHAPE::BLOCK_TYPE_CODE = 0x28
staticconstexpr

Definition at line 1742 of file allegro_pcb_structs.h.

◆ m_Coords

std::array<int32_t, 4> ALLEGRO::BLK_0x28_SHAPE::m_Coords

Definition at line 1767 of file allegro_pcb_structs.h.

◆ m_FirstKeepoutPtr

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_FirstKeepoutPtr

Definition at line 1756 of file allegro_pcb_structs.h.

Referenced by ALLEGRO::BOARD_BUILDER::shapeToPolySet().

◆ m_FirstSegmentPtr

◆ m_Key

◆ m_Layer

◆ m_Next

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Next

Definition at line 1747 of file allegro_pcb_structs.h.

◆ m_Ptr1

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Ptr1

Definition at line 1748 of file allegro_pcb_structs.h.

◆ m_Ptr2

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Ptr2

Definition at line 1754 of file allegro_pcb_structs.h.

◆ m_Ptr3

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Ptr3

Definition at line 1755 of file allegro_pcb_structs.h.

◆ m_Ptr6

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Ptr6

Definition at line 1763 of file allegro_pcb_structs.h.

◆ m_TablePtr

COND_GE<FMT_VER::V_172, uint32_t> ALLEGRO::BLK_0x28_SHAPE::m_TablePtr

Definition at line 1761 of file allegro_pcb_structs.h.

Referenced by GetTablePtr().

◆ m_TablePtr_16x

COND_LT<FMT_VER::V_172, uint32_t> ALLEGRO::BLK_0x28_SHAPE::m_TablePtr_16x

Definition at line 1765 of file allegro_pcb_structs.h.

Referenced by GetTablePtr().

◆ m_Type

uint8_t ALLEGRO::BLK_0x28_SHAPE::m_Type

Definition at line 1744 of file allegro_pcb_structs.h.

◆ m_Unknown1

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Unknown1

Definition at line 1749 of file allegro_pcb_structs.h.

◆ m_Unknown2

COND_GE<FMT_VER::V_172, uint32_t> ALLEGRO::BLK_0x28_SHAPE::m_Unknown2

Definition at line 1751 of file allegro_pcb_structs.h.

◆ m_Unknown3

COND_GE<FMT_VER::V_172, uint32_t> ALLEGRO::BLK_0x28_SHAPE::m_Unknown3

Definition at line 1752 of file allegro_pcb_structs.h.

◆ m_Unknown4

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Unknown4

Definition at line 1758 of file allegro_pcb_structs.h.

◆ m_Unknown5

uint32_t ALLEGRO::BLK_0x28_SHAPE::m_Unknown5

Definition at line 1759 of file allegro_pcb_structs.h.


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