Horizon
Classes | Public Member Functions | List of all members
horizon::CoreBoard Class Reference
Inheritance diagram for horizon::CoreBoard:
horizon::Core horizon::DocumentBoard horizon::Document horizon::Document horizon::IDocumentBoard horizon::IDocument horizon::IDocument horizon::IDocument

Classes

class  Filenames
 

Public Member Functions

 CoreBoard (const Filenames &filenames, IPool &pool, IPool &pool_caching)
 
class Block * get_top_block () override
 
class LayerProvider & get_layer_provider () override
 
bool set_property (ObjectType type, const UUID &uu, ObjectProperty::ID property, const class PropertyValue &value) override
 
bool get_property (ObjectType type, const UUID &uu, ObjectProperty::ID property, class PropertyValue &value) override
 
bool get_property_meta (ObjectType type, const UUID &uu, ObjectProperty::ID property, class PropertyMeta &meta) override
 
void reload_netlist ()
 
const Board & get_canvas_data ()
 
Board * get_board () override
 
const Board * get_board () const
 
class Rules * get_rules () override
 
GerberOutputSettings & get_gerber_output_settings () override
 
ODBOutputSettings & get_odb_output_settings () override
 
PDFExportSettings & get_pdf_export_settings () override
 
STEPExportSettings & get_step_export_settings () override
 
PnPExportSettings & get_pnp_export_settings () override
 
GridSettings * get_grid_settings () override
 
BoardColors & get_colors () override
 
void update_rules () override
 
std::pair< Coordi, Coordi > get_bbox () override
 
json get_meta () override
 
const std::string & get_filename () const override
 
ObjectType get_object_type () const override
 
const FileVersion & get_version () const override
 
void reload_pool () override
 
- Public Member Functions inherited from horizon::Core
class Block * get_top_block () override
 
class Rules * get_rules () override
 
class GridSettings * get_grid_settings () override
 
class IPool & get_pool () override
 
class IPool & get_pool_caching () override
 
virtual ObjectType get_object_type () const =0
 
void rebuild (const std::string &comment)
 Expands the non-working document. More...
 
ToolResponse tool_begin (ToolID tool_id, const ToolArgs &args, class ImpInterface *imp, bool transient=false)
 
ToolResponse tool_update (ToolArgs &args)
 
std::optional< ToolArgs > get_pending_tool_args ()
 
std::pair< bool, bool > tool_can_begin (ToolID tool_id, const std::set< SelectableRef > &selection)
 
void save ()
 
void autosave ()
 
virtual void delete_autosave ()=0
 
void undo ()
 
void redo ()
 
bool can_undo () const
 
bool can_redo () const
 
const std::string & get_undo_comment () const
 
const std::string & get_redo_comment () const
 
void set_history_max (unsigned int m)
 
bool tool_is_active ()
 
virtual bool set_property (ObjectType type, const UUID &uu, ObjectProperty::ID property, const class PropertyValue &value)
 
virtual bool get_property (ObjectType type, const UUID &uu, ObjectProperty::ID property, class PropertyValue &value)
 
virtual bool get_property_meta (ObjectType type, const UUID &uu, ObjectProperty::ID property, class PropertyMeta &meta)
 
void set_property_begin ()
 
void set_property_commit ()
 
bool get_property_transaction () const
 
virtual json get_meta ()
 
virtual void update_rules ()
 
virtual std::pair< Coordi, Coordi > get_bbox ()=0
 
std::set< SelectableRef > & get_tool_selection ()
 
std::set< InToolActionID > get_tool_actions () const
 
bool get_needs_save () const
 
void set_needs_save ()
 
virtual const std::string & get_filename () const =0
 
type_signal_tool_changed signal_tool_changed ()
 
type_signal_rebuilt signal_rebuilt ()
 
type_signal_rebuilt signal_save ()
 Gets emitted right before saving. More...
 
type_signal_rebuilt signal_modified ()
 
type_signal_rebuilt signal_can_undo_redo ()
 
type_signal_needs_save signal_needs_save ()
 
type_signal_load_tool_settings signal_load_tool_settings ()
 
type_signal_save_tool_settings signal_save_tool_settings ()
 
virtual void reload_pool ()
 
- Public Member Functions inherited from horizon::Document
class Junction * insert_junction (const class UUID &uu) override
 
class Junction * get_junction (const UUID &uu) override
 
void delete_junction (const UUID &uu) override
 
class Line * insert_line (const UUID &uu) override
 
class Line * get_line (const UUID &uu) override
 
void delete_line (const UUID &uu) override
 
class Arc * insert_arc (const UUID &uu) override
 
class Arc * get_arc (const UUID &uu) override
 
void delete_arc (const UUID &uu) override
 
class Text * insert_text (const UUID &uu) override
 
class Text * get_text (const UUID &uu) override
 
void delete_text (const UUID &uu) override
 
class Polygon * insert_polygon (const UUID &uu) override
 
class Polygon * get_polygon (const UUID &uu) override
 
void delete_polygon (const UUID &uu) override
 
class Hole * insert_hole (const UUID &uu) override
 
class Hole * get_hole (const UUID &uu) override
 
void delete_hole (const UUID &uu) override
 
class Dimension * insert_dimension (const UUID &uu) override
 
class Dimension * get_dimension (const UUID &uu) override
 
void delete_dimension (const UUID &uu) override
 
class Keepout * insert_keepout (const UUID &uu) override
 
class Keepout * get_keepout (const UUID &uu) override
 
void delete_keepout (const UUID &uu) override
 
class Picture * insert_picture (const UUID &uu) override
 
class Picture * get_picture (const UUID &uu) override
 
void delete_picture (const UUID &uu) override
 
std::vector< Line * > get_lines () override
 
std::vector< Arc * > get_arcs () override
 
std::vector< Keepout * > get_keepouts () override
 
std::string get_display_name (ObjectType type, const UUID &uu) override
 
std::string get_display_name (ObjectType type, const UUID &uu, const UUID &sheet) override
 
virtual bool has_object_type (ObjectType ty) const =0
 
virtual class Junction * insert_junction (const class UUID &uu)=0
 
virtual class Junction * get_junction (const UUID &uu)=0
 
virtual void delete_junction (const UUID &uu)=0
 
virtual class Line * insert_line (const UUID &uu)=0
 
virtual class Line * get_line (const UUID &uu)=0
 
virtual void delete_line (const UUID &uu)=0
 
virtual class Arc * insert_arc (const UUID &uu)=0
 
virtual class Arc * get_arc (const UUID &uu)=0
 
virtual void delete_arc (const UUID &uu)=0
 
virtual class Text * insert_text (const UUID &uu)=0
 
virtual class Text * get_text (const UUID &uu)=0
 
virtual void delete_text (const UUID &uu)=0
 
virtual class Polygon * insert_polygon (const UUID &uu)=0
 
virtual class Polygon * get_polygon (const UUID &uu)=0
 
virtual void delete_polygon (const UUID &uu)=0
 
virtual class Hole * insert_hole (const UUID &uu)=0
 
virtual class Hole * get_hole (const UUID &uu)=0
 
virtual void delete_hole (const UUID &uu)=0
 
virtual class Dimension * insert_dimension (const UUID &uu)=0
 
virtual class Dimension * get_dimension (const UUID &uu)=0
 
virtual void delete_dimension (const UUID &uu)=0
 
virtual class Keepout * insert_keepout (const UUID &uu)=0
 
virtual class Keepout * get_keepout (const UUID &uu)=0
 
virtual void delete_keepout (const UUID &uu)=0
 
virtual class Picture * insert_picture (const UUID &uu)=0
 
virtual class Picture * get_picture (const UUID &uu)=0
 
virtual void delete_picture (const UUID &uu)=0
 
virtual std::vector< Line * > get_lines ()=0
 
virtual std::vector< Arc * > get_arcs ()=0
 
virtual std::vector< Keepout * > get_keepouts ()=0
 
virtual class Block * get_top_block ()=0
 
virtual class Rules * get_rules ()=0
 
virtual class IPool & get_pool ()=0
 
virtual class IPool & get_pool_caching ()=0
 
virtual class LayerProvider & get_layer_provider ()=0
 
virtual class GridSettings * get_grid_settings ()=0
 
virtual std::string get_display_name (ObjectType type, const UUID &uu)=0
 
virtual std::string get_display_name (ObjectType type, const UUID &uu, const UUID &sheet)=0
 
virtual const class FileVersion & get_version () const =0
 
- Public Member Functions inherited from horizon::DocumentBoard
bool has_object_type (ObjectType type) const override
 
std::string get_display_name (ObjectType type, const UUID &uu) override
 
class Junction * insert_junction (const class UUID &uu) override
 
class Junction * get_junction (const UUID &uu) override
 
void delete_junction (const UUID &uu) override
 
virtual class Board * get_board ()=0
 
virtual class GerberOutputSettings & get_gerber_output_settings ()=0
 
virtual class ODBOutputSettings & get_odb_output_settings ()=0
 
virtual class PDFExportSettings & get_pdf_export_settings ()=0
 
virtual class STEPExportSettings & get_step_export_settings ()=0
 
virtual class PnPExportSettings & get_pnp_export_settings ()=0
 
virtual class BoardColors & get_colors ()=0
 

Additional Inherited Members

- Public Types inherited from horizon::Core
typedef sigc::signal< void, ToolID > type_signal_tool_changed
 
typedef sigc::signal< void > type_signal_rebuilt
 
typedef sigc::signal< void, bool > type_signal_needs_save
 
typedef sigc::signal< json, ToolID > type_signal_load_tool_settings
 
typedef sigc::signal< void, ToolID, json > type_signal_save_tool_settings
 
- Protected Member Functions inherited from horizon::Core
 Core (class IPool &pool, IPool *m_pool_caching)
 
void set_needs_save (bool v)
 
void rebuild_finish (bool from_undo, const std::string &comment)
 
virtual void history_push (const std::string &comment)=0
 
virtual void history_load (unsigned int i)=0
 
virtual std::string get_history_comment_context () const
 
void history_clear ()
 
void history_trim ()
 
void layers_to_meta (class PropertyMeta &meta)
 
void get_placement (const Placement &placement, class PropertyValue &value, ObjectProperty::ID property)
 
void set_placement (Placement &placement, const class PropertyValue &value, ObjectProperty::ID property)
 
virtual void save (const std::string &suffix)=0
 
json get_meta_from_file (const std::string &filename)
 
- Protected Member Functions inherited from horizon::Document
virtual std::map< UUID, Junction > * get_junction_map ()
 
virtual std::map< UUID, Line > * get_line_map ()
 
virtual std::map< UUID, Arc > * get_arc_map ()
 
virtual std::map< UUID, Text > * get_text_map ()
 
virtual std::map< UUID, Polygon > * get_polygon_map ()
 
virtual std::map< UUID, Hole > * get_hole_map ()
 
virtual std::map< UUID, Dimension > * get_dimension_map ()
 
virtual std::map< UUID, Keepout > * get_keepout_map ()
 
virtual std::map< UUID, Picture > * get_picture_map ()
 
- Protected Member Functions inherited from horizon::DocumentBoard
std::map< UUID, Polygon > * get_polygon_map () override
 
std::map< UUID, Text > * get_text_map () override
 
std::map< UUID, Line > * get_line_map () override
 
std::map< UUID, Dimension > * get_dimension_map () override
 
std::map< UUID, Arc > * get_arc_map () override
 
std::map< UUID, Keepout > * get_keepout_map () override
 
std::map< UUID, Picture > * get_picture_map () override
 
- Protected Attributes inherited from horizon::Core
class IPool & m_pool
 
class IPool & m_pool_caching
 
type_signal_tool_changed s_signal_tool_changed
 
type_signal_rebuilt s_signal_rebuilt
 
type_signal_rebuilt s_signal_save
 
type_signal_rebuilt s_signal_modified
 
type_signal_rebuilt s_signal_can_undo_redo
 
type_signal_needs_save s_signal_needs_save
 
type_signal_load_tool_settings s_signal_load_tool_settings
 
type_signal_save_tool_settings s_signal_save_tool_settings
 
bool needs_save = false
 
std::deque< std::unique_ptr< HistoryItem > > history
 
int history_current = -1
 
size_t history_max = 50
 
bool property_transaction = false
 
- Static Protected Attributes inherited from horizon::Core
static const std::string autosave_suffix = ".autosave"
 

Member Function Documentation

◆ get_bbox()

std::pair< Coordi, Coordi > horizon::CoreBoard::get_bbox ( )
overridevirtual

Implements horizon::Core.

◆ get_board()

Board * horizon::CoreBoard::get_board ( )
overridevirtual

◆ get_colors()

BoardColors & horizon::CoreBoard::get_colors ( )
inlineoverridevirtual

◆ get_filename()

const std::string & horizon::CoreBoard::get_filename ( ) const
overridevirtual

Implements horizon::Core.

◆ get_gerber_output_settings()

GerberOutputSettings & horizon::CoreBoard::get_gerber_output_settings ( )
inlineoverridevirtual

◆ get_grid_settings()

GridSettings * horizon::CoreBoard::get_grid_settings ( )
inlineoverridevirtual

Reimplemented from horizon::Core.

◆ get_layer_provider()

LayerProvider & horizon::CoreBoard::get_layer_provider ( )
overridevirtual

Implements horizon::IDocument.

◆ get_meta()

json horizon::CoreBoard::get_meta ( )
overridevirtual
Returns
the current document's meta information. Meta information contains grid spacing and layer setup.

Reimplemented from horizon::Core.

◆ get_object_type()

ObjectType horizon::CoreBoard::get_object_type ( ) const
inlineoverridevirtual

Implements horizon::Core.

◆ get_odb_output_settings()

ODBOutputSettings & horizon::CoreBoard::get_odb_output_settings ( )
inlineoverridevirtual

◆ get_pdf_export_settings()

PDFExportSettings & horizon::CoreBoard::get_pdf_export_settings ( )
inlineoverridevirtual

◆ get_pnp_export_settings()

PnPExportSettings & horizon::CoreBoard::get_pnp_export_settings ( )
inlineoverridevirtual

◆ get_property()

bool horizon::CoreBoard::get_property ( ObjectType  type,
const UUID &  uu,
ObjectProperty::ID  property,
class PropertyValue &  value 
)
overridevirtual

Reimplemented from horizon::Core.

◆ get_property_meta()

bool horizon::CoreBoard::get_property_meta ( ObjectType  type,
const UUID &  uu,
ObjectProperty::ID  property,
class PropertyMeta &  meta 
)
overridevirtual

Reimplemented from horizon::Core.

◆ get_rules()

Rules * horizon::CoreBoard::get_rules ( )
overridevirtual

Reimplemented from horizon::Core.

◆ get_step_export_settings()

STEPExportSettings & horizon::CoreBoard::get_step_export_settings ( )
inlineoverridevirtual

◆ get_top_block()

Block * horizon::CoreBoard::get_top_block ( )
overridevirtual

Reimplemented from horizon::Core.

◆ get_version()

const FileVersion & horizon::CoreBoard::get_version ( ) const
inlineoverridevirtual

Implements horizon::IDocument.

◆ reload_pool()

void horizon::CoreBoard::reload_pool ( )
overridevirtual

Reimplemented from horizon::Core.

◆ set_property()

bool horizon::CoreBoard::set_property ( ObjectType  type,
const UUID &  uu,
ObjectProperty::ID  property,
const class PropertyValue &  value 
)
overridevirtual

Reimplemented from horizon::Core.

◆ update_rules()

void horizon::CoreBoard::update_rules ( )
overridevirtual

Reimplemented from horizon::Core.


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