TVM  0.9.4
tvm::graph::internal::Inputs Class Reference

#include <tvm/graph/internal/Inputs.h>

Inheritance diagram for tvm::graph::internal::Inputs:

Classes

struct  Iterator
 

Public Types

using inputs_t = std::unordered_map< abstract::Outputs *, std::set< int > >
 
using store_t = std::unordered_set< std::shared_ptr< abstract::Outputs > >
 

Public Member Functions

virtual ~Inputs ()=default
 
template<typename T , typename EnumI , typename... Args>
void addInput (std::shared_ptr< T > source, EnumI i, Args... args)
 
template<typename T , typename EnumI , typename... Args, typename std::enable_if< std::is_base_of< abstract::Outputs, T >::value, int >::type = 0>
void addInput (T &source, EnumI i, Args... args)
 
template<typename T >
void removeInput (T *source)
 
template<typename T , typename... Args>
void removeInput (T *source, Args... args)
 
template<typename T >
Iterator getInput (T *source)
 
template<typename T >
Iterator getInput (const std::shared_ptr< T > &source)
 

Friends

class tvm::graph::CallGraph
 

Detailed Description

Inputs store a list of Outputs and the required output signals

Member Typedef Documentation

◆ inputs_t

using tvm::graph::internal::Inputs::inputs_t = std::unordered_map<abstract::Outputs *, std::set<int> >

Type used to store the inputs

◆ store_t

using tvm::graph::internal::Inputs::store_t = std::unordered_set<std::shared_ptr<abstract::Outputs> >

Type used to store the inputs data

Constructor & Destructor Documentation

◆ ~Inputs()

virtual tvm::graph::internal::Inputs::~Inputs ( )
virtualdefault

Member Function Documentation

◆ addInput() [1/2]

template<typename T , typename EnumI , typename... Args>
void tvm::graph::internal::Inputs::addInput ( std::shared_ptr< T >  source,
EnumI  i,
Args...  args 
)

Add outputs from a given Output object

◆ addInput() [2/2]

template<typename T , typename EnumI , typename... Args, typename std::enable_if< std::is_base_of< abstract::Outputs, T >::value, int >::type = 0>
void tvm::graph::internal::Inputs::addInput ( T &  source,
EnumI  i,
Args...  args 
)

Add outputs from a given Output object.

Leave the caller responsible for the source lifetime

◆ getInput() [1/2]

template<typename T >
Iterator tvm::graph::internal::Inputs::getInput ( const std::shared_ptr< T > &  source)

Retrieve an input from a given Output object

◆ getInput() [2/2]

template<typename T >
Iterator tvm::graph::internal::Inputs::getInput ( T *  source)

Retrieve an input from a given Output object

◆ removeInput() [1/2]

template<typename T >
void tvm::graph::internal::Inputs::removeInput ( T *  source)

Remove all outputs from a given Output object

◆ removeInput() [2/2]

template<typename T , typename... Args>
void tvm::graph::internal::Inputs::removeInput ( T *  source,
Args...  args 
)

Remove outputs from a given Output object

Friends And Related Function Documentation

◆ tvm::graph::CallGraph

friend class tvm::graph::CallGraph
friend

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