KiCad PCB EDA Suite
AFILL6 Struct Reference

#include <altium_parser_pcb.h>

Public Member Functions

 AFILL6 (ALTIUM_PARSER &aReader)
 

Public Attributes

bool is_locked
 
bool is_keepout
 
ALTIUM_LAYER layer
 
uint16_t component
 
uint16_t net
 
wxPoint pos1
 
wxPoint pos2
 
double rotation
 

Detailed Description

Definition at line 667 of file altium_parser_pcb.h.

Constructor & Destructor Documentation

◆ AFILL6()

AFILL6::AFILL6 ( ALTIUM_PARSER aReader)
explicit

Definition at line 844 of file altium_parser_pcb.cpp.

845 {
846  ALTIUM_RECORD recordtype = static_cast<ALTIUM_RECORD>( aReader.Read<uint8_t>() );
847 
848  if( recordtype != ALTIUM_RECORD::FILL )
849  THROW_IO_ERROR( "Fills6 stream has invalid recordtype" );
850 
851  // Subrecord 1
852  aReader.ReadAndSetSubrecordLength();
853 
854  layer = static_cast<ALTIUM_LAYER>( aReader.Read<uint8_t>() );
855 
856  uint8_t flags1 = aReader.Read<uint8_t>();
857  is_locked = ( flags1 & 0x04 ) == 0;
858 
859  uint8_t flags2 = aReader.Read<uint8_t>();
860  is_keepout = flags2 == 2;
861 
862  net = aReader.Read<uint16_t>();
863  aReader.Skip( 2 );
864  component = aReader.Read<uint16_t>();
865  aReader.Skip( 4 );
866  pos1 = aReader.ReadWxPoint();
867  pos2 = aReader.ReadWxPoint();
868  rotation = aReader.Read<double>();
869 
870  aReader.SkipSubrecord();
871 
872  if( aReader.HasParsingError() )
873  THROW_IO_ERROR( "Fills6 stream was not parsed correctly" );
874 }
double rotation
wxPoint pos1
ALTIUM_RECORD
void Skip(size_t aLength)
size_t ReadAndSetSubrecordLength()
wxPoint ReadWxPoint()
uint16_t net
uint16_t component
ALTIUM_LAYER layer
void SkipSubrecord()
#define THROW_IO_ERROR(msg)
Definition: ki_exception.h:38
bool HasParsingError()
wxPoint pos2

References component, FILL, ALTIUM_PARSER::HasParsingError(), is_keepout, is_locked, layer, net, pos1, pos2, ALTIUM_PARSER::Read(), ALTIUM_PARSER::ReadAndSetSubrecordLength(), ALTIUM_PARSER::ReadWxPoint(), rotation, ALTIUM_PARSER::Skip(), ALTIUM_PARSER::SkipSubrecord(), and THROW_IO_ERROR.

Member Data Documentation

◆ component

uint16_t AFILL6::component

Definition at line 673 of file altium_parser_pcb.h.

Referenced by AFILL6().

◆ is_keepout

bool AFILL6::is_keepout

Definition at line 670 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().

◆ is_locked

bool AFILL6::is_locked

Definition at line 669 of file altium_parser_pcb.h.

Referenced by AFILL6().

◆ layer

ALTIUM_LAYER AFILL6::layer

Definition at line 672 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().

◆ net

uint16_t AFILL6::net

Definition at line 674 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().

◆ pos1

wxPoint AFILL6::pos1

Definition at line 676 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().

◆ pos2

wxPoint AFILL6::pos2

Definition at line 677 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().

◆ rotation

double AFILL6::rotation

Definition at line 678 of file altium_parser_pcb.h.

Referenced by AFILL6(), and ALTIUM_PCB::ParseFills6Data().


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