Horizon
schematic.hpp
1 #pragma once
2 #include <Python.h>
3 #include "block/block.hpp"
4 #include "schematic/schematic.hpp"
5 #include "project/project.hpp"
6 #include "pool/pool_cached.hpp"
7 
8 extern PyTypeObject SchematicType;
9 
10 class SchematicWrapper {
11 public:
12  SchematicWrapper(const horizon::Project &prj, const horizon::UUID &block_uuid);
14  horizon::Block block;
15  horizon::Schematic schematic;
16 };
17 
18 typedef struct {
19  PyObject_HEAD
20  /* Type-specific fields go here. */
21  SchematicWrapper *schematic;
22 } PySchematic;
PySchematic
Definition: schematic.hpp:18
horizon::Project
Definition: project.hpp:23
SchematicWrapper
Definition: schematic.hpp:10
horizon::PoolCached
Definition: pool_cached.hpp:5
horizon::Block
A block is one level of hierarchy in the netlist.
Definition: block.hpp:25
horizon::Schematic
A Schematic is the visual representation of a Block.
Definition: schematic.hpp:29
horizon::UUID
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16