KiCad PCB EDA Suite
Loading...
Searching...
No Matches
api_enums.cpp File Reference
#include <kicommon.h>
#include <api/api_enums.h>
#include <core/mirror.h>
#include "pad.h"
#include <api/common/types/base_types.pb.h>
#include <api/common/types/embedded_files.pb.h>
#include <api/common/types/enums.pb.h>
#include <api/common/types/library_types.pb.h>
#include <api/board/board_commands.pb.h>
#include <api/board/board.pb.h>
#include <api/board/board_rules.pb.h>
#include <api/board/board_types.pb.h>
#include <api/schematic/schematic_jobs.pb.h>
#include <api/schematic/schematic_types.pb.h>
#include <core/typeinfo.h>
#include <libraries/library_manager.h>
#include <libraries/library_table.h>
#include <line_ending.h>
#include <eda_shape.h>
#include <font/text_attributes.h>
#include <jobs/job_export_sch_netlist.h>
#include <jobs/job_export_sch_plot.h>
#include <layer_ids.h>
#include <page_info.h>
#include <pin_type.h>
#include <stroke_params.h>
#include <widgets/report_severity.h>
#include <embedded_files.h>

Go to the source code of this file.

Functions

template<>
KICOMMON_API KICAD_T FromProtoEnum (types::KiCadObjectType aValue)
 
template<>
KICOMMON_API types::KiCadObjectType ToProtoEnum (KICAD_T aValue)
 
template<>
KICOMMON_API PCB_LAYER_ID FromProtoEnum (board::types::BoardLayer aValue)
 
template<>
KICOMMON_API board::types::BoardLayer ToProtoEnum (PCB_LAYER_ID aValue)
 
template<>
KICOMMON_API JOB_PAGE_SIZE FromProtoEnum (schematic::jobs::SchematicJobPageSize aValue)
 
template<>
KICOMMON_API schematic::jobs::SchematicJobPageSize ToProtoEnum (JOB_PAGE_SIZE aValue)
 
template<>
KICOMMON_API JOB_EXPORT_SCH_NETLIST::FORMAT FromProtoEnum (schematic::jobs::SchematicNetlistFormat aValue)
 
template<>
KICOMMON_API schematic::jobs::SchematicNetlistFormat ToProtoEnum (JOB_EXPORT_SCH_NETLIST::FORMAT aValue)
 
template<>
KICOMMON_API GR_TEXT_H_ALIGN_T FromProtoEnum (types::HorizontalAlignment aValue)
 
template<>
KICOMMON_API types::HorizontalAlignment ToProtoEnum (GR_TEXT_H_ALIGN_T aValue)
 
template<>
KICOMMON_API GR_TEXT_V_ALIGN_T FromProtoEnum (types::VerticalAlignment aValue)
 
template<>
KICOMMON_API types::VerticalAlignment ToProtoEnum (GR_TEXT_V_ALIGN_T aValue)
 
template<>
KICOMMON_API LINE_STYLE FromProtoEnum (types::StrokeLineStyle aValue)
 
template<>
KICOMMON_API types::StrokeLineStyle ToProtoEnum (LINE_STYLE aValue)
 
template<>
KICOMMON_API FILL_T FromProtoEnum (types::GraphicFillType aValue)
 
template<>
KICOMMON_API types::GraphicFillType ToProtoEnum (FILL_T aValue)
 
template<>
KICOMMON_API types::LineEndingStyle ToProtoEnum (LINE_ENDING_STYLE aValue)
 
template<>
KICOMMON_API LINE_ENDING_STYLE FromProtoEnum (types::LineEndingStyle aValue)
 
template<>
KICOMMON_API ELECTRICAL_PINTYPE FromProtoEnum (types::ElectricalPinType aValue)
 
template<>
KICOMMON_API types::ElectricalPinType ToProtoEnum (ELECTRICAL_PINTYPE aValue)
 
template<>
KICOMMON_API PAD_SIM_ELECTRICAL_TYPE FromProtoEnum (board::types::PadSimElectricalType aValue)
 
template<>
KICOMMON_API board::types::PadSimElectricalType ToProtoEnum (PAD_SIM_ELECTRICAL_TYPE aValue)
 
template<>
KICOMMON_API types::RuleSeverity ToProtoEnum (SEVERITY aValue)
 
template<>
KICOMMON_API SEVERITY FromProtoEnum (types::RuleSeverity aValue)
 
template<>
KICOMMON_API PAGE_SIZE_TYPE FromProtoEnum (types::PageSize aValue)
 
template<>
KICOMMON_API types::PageSize ToProtoEnum (PAGE_SIZE_TYPE aValue)
 
template<>
KICOMMON_API FLIP_DIRECTION FromProtoEnum (board::commands::BoardFlipDirection aValue)
 
template<>
KICOMMON_API board::commands::BoardFlipDirection ToProtoEnum (FLIP_DIRECTION aValue)
 
template<>
KICOMMON_API EMBEDDED_FILES::EMBEDDED_FILE::FILE_TYPE FromProtoEnum (common::types::EmbeddedFileType aValue)
 
template<>
KICOMMON_API common::types::EmbeddedFileType ToProtoEnum (EMBEDDED_FILES::EMBEDDED_FILE::FILE_TYPE aValue)
 
template<>
KICOMMON_API LIBRARY_TABLE_TYPE FromProtoEnum (types::LibraryType aType)
 
template<>
KICOMMON_API types::LibraryType ToProtoEnum (LIBRARY_TABLE_TYPE aType)
 
template<>
KICOMMON_API LIBRARY_TABLE_SCOPE FromProtoEnum (types::LibraryTableScope aScope)
 
template<>
KICOMMON_API types::LibraryTableScope ToProtoEnum (LIBRARY_TABLE_SCOPE aScope)
 
template<>
KICOMMON_API LOAD_STATUS FromProtoEnum (types::LibraryLoadStatus aStatus)
 
template<>
KICOMMON_API types::LibraryLoadStatus ToProtoEnum (LOAD_STATUS aStatus)
 

Function Documentation

◆ FromProtoEnum() [1/18]

template<>
KICOMMON_API FLIP_DIRECTION FromProtoEnum ( board::commands::BoardFlipDirection aValue)

Definition at line 857 of file api_enums.cpp.

References LEFT_RIGHT, and TOP_BOTTOM.

◆ FromProtoEnum() [2/18]

◆ FromProtoEnum() [3/18]

template<>
KICOMMON_API PAD_SIM_ELECTRICAL_TYPE FromProtoEnum ( board::types::PadSimElectricalType aValue)

Definition at line 728 of file api_enums.cpp.

References NONE, SINK, and SOURCE.

◆ FromProtoEnum() [4/18]

◆ FromProtoEnum() [5/18]

template<>
KICOMMON_API JOB_PAGE_SIZE FromProtoEnum ( schematic::jobs::SchematicJobPageSize aValue)

Definition at line 409 of file api_enums.cpp.

References PAGE_SIZE_A, PAGE_SIZE_A4, and PAGE_SIZE_AUTO.

◆ FromProtoEnum() [6/18]

◆ FromProtoEnum() [7/18]

template<>
KICOMMON_API ELECTRICAL_PINTYPE FromProtoEnum ( types::ElectricalPinType aValue)

◆ FromProtoEnum() [8/18]

template<>
KICOMMON_API FILL_T FromProtoEnum ( types::GraphicFillType aValue)

◆ FromProtoEnum() [9/18]

template<>
KICOMMON_API GR_TEXT_H_ALIGN_T FromProtoEnum ( types::HorizontalAlignment aValue)

◆ FromProtoEnum() [10/18]

template<>
KICOMMON_API KICAD_T FromProtoEnum ( types::KiCadObjectType aValue)

Definition at line 55 of file api_enums.cpp.

References LIB_SYMBOL_T, PCB_ARC_T, PCB_BARCODE_T, PCB_CONSTRAINT_T, PCB_DIMENSION_T, PCB_DRILL_CHART_T, PCB_DRILL_MAP_T, PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GRID_ITEM_T, PCB_GROUP_T, PCB_MARKER_T, PCB_PAD_T, PCB_POINT_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, SCH_BITMAP_T, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_GROUP_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_MARKER_T, SCH_NO_CONNECT_T, SCH_PIN_T, SCH_RULE_AREA_T, SCH_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SCH_TABLE_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, TYPE_NOT_INIT, WSG_BITMAP_T, WSG_LINE_T, WSG_PAGE_T, WSG_POLY_T, WSG_RECT_T, and WSG_TEXT_T.

Referenced by ApplyBoardPlotSettings(), applySchematicPlotSettings(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCHEMATIC::ClearUnresolvedERCExclusions(), EDA_SHAPE::Deserialize(), FOOTPRINT::Deserialize(), PAD::Deserialize(), PADSTACK::Deserialize(), PCB_ARC::Deserialize(), PCB_BARCODE::Deserialize(), PCB_CONSTRAINT::Deserialize(), PCB_DIM_LEADER::Deserialize(), PCB_DIMENSION_BASE::Deserialize(), PCB_DRILL_MAP::Deserialize(), PCB_POINT::Deserialize(), PCB_REFERENCE_IMAGE::Deserialize(), PCB_SHAPE::Deserialize(), PCB_TABLE::Deserialize(), PCB_TEXT::Deserialize(), PCB_TEXTBOX::Deserialize(), PCB_TRACK::Deserialize(), PCB_VIA::Deserialize(), SCH_BUS_ENTRY_BASE::Deserialize(), SCH_DIRECTIVE_LABEL::Deserialize(), SCH_GLOBALLABEL::Deserialize(), SCH_HIERLABEL::Deserialize(), SCH_LINE::Deserialize(), SCH_PIN::Deserialize(), SCH_SHEET_PIN::Deserialize(), SCH_SYMBOL::Deserialize(), SCH_TEXTBOX::Deserialize(), ZONE::Deserialize(), FOOTPRINT::DeserializeDefinition(), DRC_RULE::FormatRuleFromProto(), PCB_MARKER::FromProto(), SCH_MARKER::FromProto(), API_HANDLER_BOARD::handleCheckPadstackPresenceOnLayers(), API_HANDLER_BOARD::handleFlipItems(), API_HANDLER_PCB::handleGetBoardLayerName(), API_HANDLER_LIBRARIES::handleGetLibraryStatuses(), API_HANDLER_BOARD::handleGetPadShapeAsPolygon(), API_HANDLER_PCB::handleInjectDrcError(), API_HANDLER_LIBRARIES::handleLoadAllLibraries(), API_HANDLER_PCB::handlePlaceFootprintFromLibrary(), API_HANDLER_SCH::handlePlaceSymbolFromLibrary(), API_HANDLER_LIBRARIES::handleReloadLibrary(), API_HANDLER_PCB::handleRunBoardJobExport3D(), API_HANDLER_PCB::handleRunBoardJobExportDrill(), API_HANDLER_PCB::handleRunBoardJobExportDxf(), API_HANDLER_PCB::handleRunBoardJobExportIpc2581(), API_HANDLER_PCB::handleRunBoardJobExportODB(), API_HANDLER_PCB::handleRunBoardJobExportPdf(), API_HANDLER_PCB::handleRunBoardJobExportPng(), API_HANDLER_PCB::handleRunBoardJobExportPosition(), API_HANDLER_PCB::handleRunBoardJobExportPs(), API_HANDLER_PCB::handleRunBoardJobExportRender(), API_HANDLER_PCB::handleRunBoardJobExportStats(), API_HANDLER_PCB::handleRunBoardJobExportSvg(), API_HANDLER_SCH::handleRunSchematicJobExportNetlist(), API_HANDLER_BOARD::handleSetActiveLayer(), API_HANDLER_PCB::handleSetBoardDesignRules(), API_HANDLER_PCB::handleSetBoardEditorAppearanceSettings(), API_HANDLER_PCB::handleSetBoardPlotSettings(), API_HANDLER_EDITOR::handleSetPageSettings(), API_HANDLER_BOARD::handleSetVisibleLayers(), kiapi::board::PackBoardStackup(), API_HANDLER_BOARD::parseRequestedItemTypes(), API_HANDLER_EDITOR::parseRequestedItemTypes(), testEnums(), PADSTACK::unpackCopperLayer(), kiapi::board::UnpackEmbeddedFiles(), unpackLabel(), kiapi::board::UnpackLayerSet(), kiapi::common::UnpackLineEnding(), UnpackPinMapOverride(), kiapi::common::UnpackStroke(), kiapi::common::UnpackTextAttributes(), and kiapi::board::UnpackZoneLayerOverrides().

◆ FromProtoEnum() [11/18]

template<>
KICOMMON_API LOAD_STATUS FromProtoEnum ( types::LibraryLoadStatus aStatus)

Definition at line 983 of file api_enums.cpp.

References INVALID, LOAD_ERROR, LOADED, and LOADING.

◆ FromProtoEnum() [12/18]

template<>
KICOMMON_API LIBRARY_TABLE_SCOPE FromProtoEnum ( types::LibraryTableScope aScope)

Definition at line 950 of file api_enums.cpp.

References BOTH, GLOBAL, PROJECT, and UNINITIALIZED.

◆ FromProtoEnum() [13/18]

template<>
KICOMMON_API LIBRARY_TABLE_TYPE FromProtoEnum ( types::LibraryType aType)

Definition at line 918 of file api_enums.cpp.

References DESIGN_BLOCK, FOOTPRINT, SYMBOL, and UNINITIALIZED.

◆ FromProtoEnum() [14/18]

template<>
KICOMMON_API LINE_ENDING_STYLE FromProtoEnum ( types::LineEndingStyle aValue)

Definition at line 659 of file api_enums.cpp.

References ARROW, ARROW_OPEN, CIRCLE, NONE, and SQUARE.

◆ FromProtoEnum() [15/18]

template<>
KICOMMON_API PAGE_SIZE_TYPE FromProtoEnum ( types::PageSize aValue)

Definition at line 799 of file api_enums.cpp.

References A, A0, A1, A2, A3, A4, A5, B, C, D, E, GERBER, User, USLedger, USLegal, and USLetter.

◆ FromProtoEnum() [16/18]

◆ FromProtoEnum() [17/18]

template<>
KICOMMON_API LINE_STYLE FromProtoEnum ( types::StrokeLineStyle aValue)

Definition at line 565 of file api_enums.cpp.

References DASH, DASHDOT, DASHDOTDOT, DEFAULT, DOT, and SOLID.

◆ FromProtoEnum() [18/18]

template<>
KICOMMON_API GR_TEXT_V_ALIGN_T FromProtoEnum ( types::VerticalAlignment aValue)

◆ ToProtoEnum() [1/18]

template<>
KICOMMON_API types::ElectricalPinType ToProtoEnum ( ELECTRICAL_PINTYPE aValue)

◆ ToProtoEnum() [2/18]

◆ ToProtoEnum() [3/18]

template<>
KICOMMON_API types::GraphicFillType ToProtoEnum ( FILL_T aValue)

◆ ToProtoEnum() [4/18]

template<>
KICOMMON_API board::commands::BoardFlipDirection ToProtoEnum ( FLIP_DIRECTION aValue)

Definition at line 871 of file api_enums.cpp.

References LEFT_RIGHT, and TOP_BOTTOM.

◆ ToProtoEnum() [5/18]

template<>
KICOMMON_API types::HorizontalAlignment ToProtoEnum ( GR_TEXT_H_ALIGN_T aValue)

◆ ToProtoEnum() [6/18]

template<>
KICOMMON_API types::VerticalAlignment ToProtoEnum ( GR_TEXT_V_ALIGN_T aValue)

◆ ToProtoEnum() [7/18]

◆ ToProtoEnum() [8/18]

template<>
KICOMMON_API schematic::jobs::SchematicJobPageSize ToProtoEnum ( JOB_PAGE_SIZE aValue)

Definition at line 425 of file api_enums.cpp.

References PAGE_SIZE_A, PAGE_SIZE_A4, and PAGE_SIZE_AUTO.

◆ ToProtoEnum() [9/18]

template<>
KICOMMON_API types::KiCadObjectType ToProtoEnum ( KICAD_T aValue)

Definition at line 122 of file api_enums.cpp.

References LIB_SYMBOL_T, PCB_ARC_T, PCB_BARCODE_T, PCB_CONSTRAINT_T, PCB_DIMENSION_T, PCB_DRILL_CHART_T, PCB_DRILL_MAP_T, PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GRID_ITEM_T, PCB_GROUP_T, PCB_MARKER_T, PCB_PAD_T, PCB_POINT_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, SCH_BITMAP_T, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_GROUP_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_MARKER_T, SCH_NO_CONNECT_T, SCH_PIN_T, SCH_RULE_AREA_T, SCH_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SCH_TABLE_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, WSG_BITMAP_T, WSG_LINE_T, WSG_PAGE_T, WSG_POLY_T, WSG_RECT_T, and WSG_TEXT_T.

Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), ERC_EXCLUSION::FromLegacyStrings(), API_HANDLER_BOARD::handleCheckPadstackPresenceOnLayers(), API_HANDLER_BOARD::handleGetActiveLayer(), API_HANDLER_PCB::handleGetBoardDesignRules(), API_HANDLER_PCB::handleGetBoardEditorAppearanceSettings(), API_HANDLER_PCB::handleGetBoardLayerByName(), API_HANDLER_PCB::handleGetBoardPlotSettings(), API_HANDLER_PCB::handleGetCustomDesignRules(), API_HANDLER_LIBRARIES::handleGetItemsFromLibrary(), API_HANDLER_LIBRARIES::handleGetLibraryItems(), API_HANDLER_EDITOR::handleGetPageSettings(), API_HANDLER_BOARD::handleGetVisibleLayers(), API_HANDLER_EDITOR::handleSetPageSettings(), kiapi::board::PackEmbeddedFiles(), packLabel(), kiapi::board::PackLayerSet(), packLibraryStatusEntry(), kiapi::common::PackLineEnding(), PackPinMapOverride(), kiapi::common::PackStroke(), packTableEntry(), kiapi::common::PackTextAttributes(), kiapi::board::PackZoneLayerOverrides(), BOARD_STACKUP::Serialize(), EDA_SHAPE::Serialize(), FOOTPRINT::Serialize(), PAD::Serialize(), PADSTACK::Serialize(), PCB_ARC::Serialize(), PCB_BARCODE::Serialize(), PCB_CONSTRAINT::Serialize(), PCB_DIM_LEADER::Serialize(), PCB_DIMENSION_BASE::Serialize(), PCB_DRILL_MAP::Serialize(), PCB_POINT::Serialize(), PCB_REFERENCE_IMAGE::Serialize(), PCB_SHAPE::Serialize(), PCB_TABLE::Serialize(), PCB_TEXT::Serialize(), PCB_TEXTBOX::Serialize(), PCB_TRACK::Serialize(), PCB_VIA::Serialize(), SCH_BUS_ENTRY_BASE::Serialize(), SCH_DIRECTIVE_LABEL::Serialize(), SCH_GLOBALLABEL::Serialize(), SCH_HIERLABEL::Serialize(), SCH_LINE::Serialize(), SCH_PIN::Serialize(), SCH_SHEET::Serialize(), SCH_SHEET_PIN::Serialize(), SCH_SYMBOL::Serialize(), SCH_TEXTBOX::Serialize(), ZONE::Serialize(), FOOTPRINT::SerializeDefinition(), testEnums(), DRC_CONSTRAINT::ToProto(), ToProto(), and ToProto().

◆ ToProtoEnum() [10/18]

template<>
KICOMMON_API types::LibraryTableScope ToProtoEnum ( LIBRARY_TABLE_SCOPE aScope)

Definition at line 966 of file api_enums.cpp.

References BOTH, GLOBAL, PROJECT, and UNINITIALIZED.

◆ ToProtoEnum() [11/18]

template<>
KICOMMON_API types::LibraryType ToProtoEnum ( LIBRARY_TABLE_TYPE aType)

Definition at line 934 of file api_enums.cpp.

References DESIGN_BLOCK, FOOTPRINT, and SYMBOL.

◆ ToProtoEnum() [12/18]

template<>
KICOMMON_API types::LineEndingStyle ToProtoEnum ( LINE_ENDING_STYLE aValue)

Definition at line 642 of file api_enums.cpp.

References ARROW, ARROW_OPEN, CIRCLE, NONE, and SQUARE.

◆ ToProtoEnum() [13/18]

template<>
KICOMMON_API types::StrokeLineStyle ToProtoEnum ( LINE_STYLE aValue)

Definition at line 585 of file api_enums.cpp.

References DASH, DASHDOT, DASHDOTDOT, DEFAULT, DOT, and SOLID.

◆ ToProtoEnum() [14/18]

template<>
KICOMMON_API types::LibraryLoadStatus ToProtoEnum ( LOAD_STATUS aStatus)

Definition at line 1000 of file api_enums.cpp.

References INVALID, LOAD_ERROR, LOADED, and LOADING.

◆ ToProtoEnum() [15/18]

template<>
KICOMMON_API board::types::PadSimElectricalType ToProtoEnum ( PAD_SIM_ELECTRICAL_TYPE aValue)

Definition at line 744 of file api_enums.cpp.

References NONE, SINK, and SOURCE.

◆ ToProtoEnum() [16/18]

template<>
KICOMMON_API types::PageSize ToProtoEnum ( PAGE_SIZE_TYPE aValue)

Definition at line 829 of file api_enums.cpp.

References A, A0, A1, A2, A3, A4, A5, B, C, D, E, GERBER, User, USLedger, USLegal, and USLetter.

◆ ToProtoEnum() [17/18]

◆ ToProtoEnum() [18/18]