Class Pipeline
Defined in File Pipeline.hpp
Class Documentation
-
class Pipeline
Represents the pipeline, set of nodes and connections between them.
Public Types
-
using NodeConnectionMap = PipelineImpl::NodeConnectionMap
-
using NodeMap = PipelineImpl::NodeMap
Public Functions
-
Pipeline()
Constructs a new pipeline
-
GlobalProperties getGlobalProperties() const
- Returns:
Global properties of current pipeline
-
PipelineSchema getPipelineSchema(SerializationType type = DEFAULT_SERIALIZATION_TYPE) const
- Returns:
Pipeline schema
-
inline void serialize(PipelineSchema &schema, Assets &assets, std::vector<std::uint8_t> &assetStorage) const
-
inline nlohmann::json serializeToJson() const
Returns whole pipeline represented as JSON.
Adds a node to pipeline.
Node is specified by template argument N
Removes a node from pipeline.
-
inline std::shared_ptr<const Node> getNode(Node::Id id) const
Get node with id if it exists, nullptr otherwise.
-
inline std::shared_ptr<Node> getNode(Node::Id id)
Get node with id if it exists, nullptr otherwise.
-
inline std::vector<Node::Connection> getConnections() const
Get all connections.
-
inline const NodeConnectionMap &getConnectionMap() const
Get a reference to internal connection representation.
-
inline void link(const Node::Output &out, const Node::Input &in)
Link output to an input. Both nodes must be on the same pipeline
Throws an error if they aren’t or cannot be connected
- Parameters:
out – Nodes output to connect from
in – Nodes input to connect to
-
inline void unlink(const Node::Output &out, const Node::Input &in)
Unlink output from an input.
Throws an error if link doesn’t exists
- Parameters:
out – Nodes output to unlink from
in – Nodes input to unlink to
-
inline const AssetManager &getAssetManager() const
Get pipelines AssetManager as reference.
-
inline AssetManager &getAssetManager()
Get pipelines AssetManager as reference.
-
inline void setOpenVINOVersion(OpenVINO::Version version)
Set a specific OpenVINO version to use with this pipeline.
-
inline void setCalibrationData(CalibrationHandler calibrationDataHandler)
Sets the calibration in pipeline which overrides the calibration data in eeprom
- Parameters:
calibrationDataHandler – CalibrationHandler object which is loaded with calibration information.
-
inline CalibrationHandler getCalibrationData() const
gets the calibration data which is set through pipeline
- Returns:
the calibrationHandler with calib data in the pipeline
-
inline OpenVINO::Version getOpenVINOVersion() const
Get possible OpenVINO version to run this pipeline.
-
inline tl::optional<OpenVINO::Version> getRequiredOpenVINOVersion() const
Get required OpenVINO version to run this pipeline. Can be none.
-
inline void setCameraTuningBlobPath(const dai::Path &path)
Set a camera IQ (Image Quality) tuning blob, used for all cameras.
-
inline void setXLinkChunkSize(int sizeBytes)
Set chunk size for splitting device-sent XLink packets, in bytes. A larger value could increase performance, with 0 disabling chunking. A negative value won’t modify the device defaults - configured per protocol, currently 64*1024 for both USB and Ethernet.
-
inline void setSippBufferSize(int sizeBytes)
SIPP (Signal Image Processing Pipeline) internal memory pool. SIPP is a framework used to schedule HW filters, e.g. ISP, Warp, Median filter etc. Changing the size of this pool is meant for advanced use cases, pushing the limits of the HW. By default memory is allocated in high speed CMX memory. Setting to 0 will allocate in DDR 256 kilobytes. Units are bytes.
-
inline void setSippDmaBufferSize(int sizeBytes)
SIPP (Signal Image Processing Pipeline) internal DMA memory pool. SIPP is a framework used to schedule HW filters, e.g. ISP, Warp, Median filter etc. Changing the size of this pool is meant for advanced use cases, pushing the limits of the HW. Memory is allocated in high speed CMX memory Units are bytes.
-
inline bool isOpenVINOVersionCompatible(OpenVINO::Version version) const
Checks whether a given OpenVINO version is compatible with the pipeline.
-
inline void setBoardConfig(BoardConfig board)
Sets board configuration.
-
inline BoardConfig getBoardConfig() const
Gets board configuration.
-
using NodeConnectionMap = PipelineImpl::NodeConnectionMap