ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
onert::ir::train::operation::UntrainableOperation< OperationType, > Class Template Reference

#include <UntrainableOperation.h>

Collaboration diagram for onert::ir::train::operation::UntrainableOperation< OperationType, >:

Public Member Functions

 UntrainableOperation (const OperationType &operation)
 
virtual ~UntrainableOperation ()=default
 
std::unique_ptr< ITrainableOperationclone () const override
 
void accept (OperationVisitor &v) const override
 
void accept (TrainableOperationVisitor &) const override
 
bool hasTrainableParameter () const override
 
- Public Member Functions inherited from onert::ir::train::TrainableOperation
virtual ~TrainableOperation ()=default
 
void disableWeightsUpdate () final
 
void enableWeightsUpdate () final
 
virtual bool isWeightsUpdateEnabled () const final
 
void enableBackward () final
 
void disableBackward () final
 
virtual bool isRequiredForBackward () const final
 
- Public Member Functions inherited from onert::ir::train::ITrainableOperation
virtual ~ITrainableOperation ()=default
 
- Public Member Functions inherited from onert::ir::IOperation
virtual ~IOperation ()=default
 
virtual std::string name () const
 
virtual OpCode opcode () const =0
 
virtual void replaceInputs (const OperandIndex &from, const OperandIndex &to)=0
 
virtual void replaceOutputs (const OperandIndex &from, const OperandIndex &to)=0
 
virtual const OperandIndexSequencegetInputs () const =0
 
virtual const OperandIndexSequencegetOutputs () const =0
 

Detailed Description

template<typename OperationType, std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
class onert::ir::train::operation::UntrainableOperation< OperationType, >

Definition at line 34 of file UntrainableOperation.h.

Constructor & Destructor Documentation

◆ UntrainableOperation()

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
onert::ir::train::operation::UntrainableOperation< OperationType, >::UntrainableOperation ( const OperationType operation)
inline

Definition at line 37 of file UntrainableOperation.h.

37: OperationType{operation} {}
OperationType

◆ ~UntrainableOperation()

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
virtual onert::ir::train::operation::UntrainableOperation< OperationType, >::~UntrainableOperation ( )
virtualdefault

Member Function Documentation

◆ accept() [1/2]

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
void onert::ir::train::operation::UntrainableOperation< OperationType, >::accept ( OperationVisitor v) const
inlineoverridevirtual

Implements onert::ir::train::ITrainableOperation.

Definition at line 45 of file UntrainableOperation.h.

45{ v.visit(*this); }

◆ accept() [2/2]

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
void onert::ir::train::operation::UntrainableOperation< OperationType, >::accept ( TrainableOperationVisitor ) const
inlineoverridevirtual

Implements onert::ir::train::ITrainableOperation.

Definition at line 46 of file UntrainableOperation.h.

47 {
48 throw std::runtime_error(OperationType::name() + " operation is not trainable yet");
49 }

◆ clone()

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
std::unique_ptr< ITrainableOperation > onert::ir::train::operation::UntrainableOperation< OperationType, >::clone ( ) const
inlineoverridevirtual

Implements onert::ir::train::ITrainableOperation.

Definition at line 41 of file UntrainableOperation.h.

42 {
43 return std::make_unique<UntrainableOperation<OperationType>>(*this);
44 }

◆ hasTrainableParameter()

template<typename OperationType , std::enable_if_t< std::is_base_of_v< Operation, OperationType >, bool > = true>
bool onert::ir::train::operation::UntrainableOperation< OperationType, >::hasTrainableParameter ( ) const
inlineoverridevirtual

Implements onert::ir::train::ITrainableOperation.

Definition at line 50 of file UntrainableOperation.h.

50{ return false; }

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