Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
dai::PipelineImpl Class Reference

#include <Pipeline.hpp>

Public Member Functions

 PipelineImpl ()=default
 
 PipelineImpl (const PipelineImpl &)=default
 

Private Types

using NodeConnectionMap = std::unordered_map< Node::Id, std::unordered_set< Node::Connection > >
 
using NodeMap = std::unordered_map< Node::Id, std::shared_ptr< Node > >
 

Private Member Functions

template<class N >
std::shared_ptr< N > create (const std::shared_ptr< PipelineImpl > &itself)
 
std::vector< std::shared_ptr< Node > > getAllNodes ()
 
std::vector< std::shared_ptr< const Node > > getAllNodes () const
 
BoardConfig getBoardConfig () const
 
CalibrationHandler getCalibrationData () const
 
std::vector< Node::ConnectiongetConnections () const
 
Device::Config getDeviceConfig () const
 
Node::Id getNextUniqueId ()
 
std::shared_ptr< NodegetNode (Node::Id id)
 
std::shared_ptr< const NodegetNode (Node::Id id) const
 
tl::optional< OpenVINO::VersiongetPipelineOpenVINOVersion () const
 
PipelineSchema getPipelineSchema (SerializationType type=DEFAULT_SERIALIZATION_TYPE) const
 
bool isOpenVINOVersionCompatible (OpenVINO::Version version) const
 
void link (const Node::Output &out, const Node::Input &in)
 
void remove (std::shared_ptr< Node > node)
 
void serialize (PipelineSchema &schema, Assets &assets, std::vector< std::uint8_t > &assetStorage, SerializationType type=DEFAULT_SERIALIZATION_TYPE) const
 
nlohmann::json serializeToJson () const
 
void setBoardConfig (BoardConfig board)
 
void setCalibrationData (CalibrationHandler calibrationDataHandler)
 
void setCameraTuningBlobPath (const dai::Path &path)
 
void setSippBufferSize (int sizeBytes)
 
void setSippDmaBufferSize (int sizeBytes)
 
void setXLinkChunkSize (int sizeBytes)
 
void unlink (const Node::Output &out, const Node::Input &in)
 

Static Private Member Functions

static bool canConnect (const Node::Output &out, const Node::Input &in)
 
static bool isSamePipeline (const Node::Output &out, const Node::Input &in)
 

Private Attributes

AssetManager assetManager
 
BoardConfig board
 
tl::optional< OpenVINO::VersionforceRequiredOpenVINOVersion
 
GlobalProperties globalProperties
 
Node::Id latestId = 0
 
NodeConnectionMap nodeConnectionMap
 
NodeMap nodeMap
 

Friends

class Node
 
class Pipeline
 

Detailed Description

Definition at line 23 of file Pipeline.hpp.

Member Typedef Documentation

◆ NodeConnectionMap

using dai::PipelineImpl::NodeConnectionMap = std::unordered_map<Node::Id, std::unordered_set<Node::Connection> >
private

Definition at line 76 of file Pipeline.hpp.

◆ NodeMap

using dai::PipelineImpl::NodeMap = std::unordered_map<Node::Id, std::shared_ptr<Node> >
private

Definition at line 74 of file Pipeline.hpp.

Constructor & Destructor Documentation

◆ PipelineImpl() [1/2]

dai::PipelineImpl::PipelineImpl ( )
default

◆ PipelineImpl() [2/2]

dai::PipelineImpl::PipelineImpl ( const PipelineImpl )
default

Member Function Documentation

◆ canConnect()

bool dai::PipelineImpl::canConnect ( const Node::Output out,
const Node::Input in 
)
staticprivate

Definition at line 370 of file Pipeline.cpp.

◆ create()

template<class N >
std::shared_ptr<N> dai::PipelineImpl::create ( const std::shared_ptr< PipelineImpl > &  itself)
inlineprivate

Definition at line 84 of file Pipeline.hpp.

◆ getAllNodes() [1/2]

std::vector<std::shared_ptr<Node> > dai::PipelineImpl::getAllNodes ( )
private

◆ getAllNodes() [2/2]

std::vector< std::shared_ptr< Node > > dai::PipelineImpl::getAllNodes ( ) const
private

Definition at line 71 of file Pipeline.cpp.

◆ getBoardConfig()

BoardConfig dai::PipelineImpl::getBoardConfig ( ) const
private

Definition at line 319 of file Pipeline.cpp.

◆ getCalibrationData()

CalibrationHandler dai::PipelineImpl::getCalibrationData ( ) const
private

Definition at line 461 of file Pipeline.cpp.

◆ getConnections()

std::vector< Node::Connection > dai::PipelineImpl::getConnections ( ) const
private

Definition at line 398 of file Pipeline.cpp.

◆ getDeviceConfig()

Device::Config dai::PipelineImpl::getDeviceConfig ( ) const
private

Definition at line 287 of file Pipeline.cpp.

◆ getNextUniqueId()

Node::Id dai::PipelineImpl::getNextUniqueId ( )
private

Definition at line 15 of file Pipeline.cpp.

◆ getNode() [1/2]

std::shared_ptr< Node > dai::PipelineImpl::getNode ( Node::Id  id)
private

Definition at line 64 of file Pipeline.cpp.

◆ getNode() [2/2]

std::shared_ptr< const Node > dai::PipelineImpl::getNode ( Node::Id  id) const
private

Definition at line 58 of file Pipeline.cpp.

◆ getPipelineOpenVINOVersion()

tl::optional< OpenVINO::Version > dai::PipelineImpl::getPipelineOpenVINOVersion ( ) const
private

Definition at line 234 of file Pipeline.cpp.

◆ getPipelineSchema()

PipelineSchema dai::PipelineImpl::getPipelineSchema ( SerializationType  type = DEFAULT_SERIALIZATION_TYPE) const
private

Definition at line 120 of file Pipeline.cpp.

◆ isOpenVINOVersionCompatible()

bool dai::PipelineImpl::isOpenVINOVersionCompatible ( OpenVINO::Version  version) const
private

Definition at line 225 of file Pipeline.cpp.

◆ isSamePipeline()

bool dai::PipelineImpl::isSamePipeline ( const Node::Output out,
const Node::Input in 
)
staticprivate

Definition at line 360 of file Pipeline.cpp.

◆ link()

void dai::PipelineImpl::link ( const Node::Output out,
const Node::Input in 
)
private

Definition at line 408 of file Pipeline.cpp.

◆ remove()

void dai::PipelineImpl::remove ( std::shared_ptr< Node node)
private

Definition at line 324 of file Pipeline.cpp.

◆ serialize()

void dai::PipelineImpl::serialize ( PipelineSchema schema,
Assets assets,
std::vector< std::uint8_t > &  assetStorage,
SerializationType  type = DEFAULT_SERIALIZATION_TYPE 
) const
private

Definition at line 86 of file Pipeline.cpp.

◆ serializeToJson()

nlohmann::json dai::PipelineImpl::serializeToJson ( ) const
private

Definition at line 103 of file Pipeline.cpp.

◆ setBoardConfig()

void dai::PipelineImpl::setBoardConfig ( BoardConfig  board)
private

Definition at line 315 of file Pipeline.cpp.

◆ setCalibrationData()

void dai::PipelineImpl::setCalibrationData ( CalibrationHandler  calibrationDataHandler)
private

Definition at line 454 of file Pipeline.cpp.

◆ setCameraTuningBlobPath()

void dai::PipelineImpl::setCameraTuningBlobPath ( const dai::Path path)
private

Definition at line 294 of file Pipeline.cpp.

◆ setSippBufferSize()

void dai::PipelineImpl::setSippBufferSize ( int  sizeBytes)
private

Definition at line 307 of file Pipeline.cpp.

◆ setSippDmaBufferSize()

void dai::PipelineImpl::setSippDmaBufferSize ( int  sizeBytes)
private

Definition at line 311 of file Pipeline.cpp.

◆ setXLinkChunkSize()

void dai::PipelineImpl::setXLinkChunkSize ( int  sizeBytes)
private

Definition at line 303 of file Pipeline.cpp.

◆ unlink()

void dai::PipelineImpl::unlink ( const Node::Output out,
const Node::Input in 
)
private

Definition at line 434 of file Pipeline.cpp.

Friends And Related Function Documentation

◆ Node

friend class Node
friend

Definition at line 25 of file Pipeline.hpp.

◆ Pipeline

friend class Pipeline
friend

Definition at line 24 of file Pipeline.hpp.

Member Data Documentation

◆ assetManager

AssetManager dai::PipelineImpl::assetManager
private

Definition at line 68 of file Pipeline.hpp.

◆ board

BoardConfig dai::PipelineImpl::board
private

Definition at line 80 of file Pipeline.hpp.

◆ forceRequiredOpenVINOVersion

tl::optional<OpenVINO::Version> dai::PipelineImpl::forceRequiredOpenVINOVersion
private

Definition at line 70 of file Pipeline.hpp.

◆ globalProperties

GlobalProperties dai::PipelineImpl::globalProperties
private

Definition at line 72 of file Pipeline.hpp.

◆ latestId

Node::Id dai::PipelineImpl::latestId = 0
private

Definition at line 66 of file Pipeline.hpp.

◆ nodeConnectionMap

NodeConnectionMap dai::PipelineImpl::nodeConnectionMap
private

Definition at line 78 of file Pipeline.hpp.

◆ nodeMap

NodeMap dai::PipelineImpl::nodeMap
private

Definition at line 75 of file Pipeline.hpp.


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


depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:20