Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
gtsam::internal::TernaryExpression< T, A1, A2, A3 > Class Template Reference

Ternary Expression. More...

#include <ExpressionNode.h>

Inheritance diagram for gtsam::internal::TernaryExpression< T, A1, A2, A3 >:
Inheritance graph
[legend]

Classes

struct  Record
 

Public Member Functions

void dims (std::map< Key, int > &map) const override
 Return dimensions for each argument. More...
 
std::set< Keykeys () const override
 Return keys that play in this expression. More...
 
void print (const std::string &indent="") const override
 Print. More...
 
T traceExecution (const Values &values, ExecutionTrace< T > &trace, char *ptr) const override
 Construct an execution trace for reverse AD, see UnaryExpression for explanation. More...
 
T value (const Values &values) const override
 Return value. More...
 
 ~TernaryExpression () override
 Destructor. More...
 
- Public Member Functions inherited from gtsam::internal::ExpressionNode< T >
size_t traceSize () const
 
virtual ~ExpressionNode ()
 Destructor. More...
 

Private Types

typedef Expression< T >::template TernaryFunction< A1, A2, A3 >::type Function
 

Private Member Functions

 TernaryExpression (Function f, const Expression< A1 > &e1, const Expression< A2 > &e2, const Expression< A3 > &e3)
 Constructor with a ternary function f, and two input arguments. More...
 

Private Attributes

std::shared_ptr< ExpressionNode< A1 > > expression1_
 
std::shared_ptr< ExpressionNode< A2 > > expression2_
 
std::shared_ptr< ExpressionNode< A3 > > expression3_
 
Function function_
 

Friends

class Expression< T >
 

Additional Inherited Members

- Protected Member Functions inherited from gtsam::internal::ExpressionNode< T >
 ExpressionNode (size_t traceSize=0)
 Constructor, traceSize is size of the execution trace of expression rooted here. More...
 
- Protected Attributes inherited from gtsam::internal::ExpressionNode< T >
size_t traceSize_
 

Detailed Description

template<class T, class A1, class A2, class A3>
class gtsam::internal::TernaryExpression< T, A1, A2, A3 >

Ternary Expression.

Definition at line 441 of file ExpressionNode.h.

Member Typedef Documentation

◆ Function

template<class T , class A1 , class A2 , class A3 >
typedef Expression<T>::template TernaryFunction<A1, A2, A3>::type gtsam::internal::TernaryExpression< T, A1, A2, A3 >::Function
private

Definition at line 443 of file ExpressionNode.h.

Constructor & Destructor Documentation

◆ TernaryExpression()

template<class T , class A1 , class A2 , class A3 >
gtsam::internal::TernaryExpression< T, A1, A2, A3 >::TernaryExpression ( Function  f,
const Expression< A1 > &  e1,
const Expression< A2 > &  e2,
const Expression< A3 > &  e3 
)
inlineprivate

Constructor with a ternary function f, and two input arguments.

Definition at line 450 of file ExpressionNode.h.

◆ ~TernaryExpression()

template<class T , class A1 , class A2 , class A3 >
gtsam::internal::TernaryExpression< T, A1, A2, A3 >::~TernaryExpression ( )
inlineoverride

Destructor.

Definition at line 463 of file ExpressionNode.h.

Member Function Documentation

◆ dims()

template<class T , class A1 , class A2 , class A3 >
void gtsam::internal::TernaryExpression< T, A1, A2, A3 >::dims ( std::map< Key, int > &  map) const
inlineoverridevirtual

Return dimensions for each argument.

Reimplemented from gtsam::internal::ExpressionNode< T >.

Definition at line 492 of file ExpressionNode.h.

◆ keys()

template<class T , class A1 , class A2 , class A3 >
std::set<Key> gtsam::internal::TernaryExpression< T, A1, A2, A3 >::keys ( ) const
inlineoverridevirtual

Return keys that play in this expression.

Reimplemented from gtsam::internal::ExpressionNode< T >.

Definition at line 482 of file ExpressionNode.h.

◆ print()

template<class T , class A1 , class A2 , class A3 >
void gtsam::internal::TernaryExpression< T, A1, A2, A3 >::print ( const std::string &  indent = "") const
inlineoverridevirtual

Print.

Implements gtsam::internal::ExpressionNode< T >.

Definition at line 467 of file ExpressionNode.h.

◆ traceExecution()

template<class T , class A1 , class A2 , class A3 >
T gtsam::internal::TernaryExpression< T, A1, A2, A3 >::traceExecution ( const Values values,
ExecutionTrace< T > &  trace,
char *  ptr 
) const
inlineoverridevirtual

Construct an execution trace for reverse AD, see UnaryExpression for explanation.

Implements gtsam::internal::ExpressionNode< T >.

Definition at line 549 of file ExpressionNode.h.

◆ value()

template<class T , class A1 , class A2 , class A3 >
T gtsam::internal::TernaryExpression< T, A1, A2, A3 >::value ( const Values values) const
inlineoverridevirtual

Return value.

Implements gtsam::internal::ExpressionNode< T >.

Definition at line 475 of file ExpressionNode.h.

Friends And Related Function Documentation

◆ Expression< T >

template<class T , class A1 , class A2 , class A3 >
friend class Expression< T >
friend

Definition at line 458 of file ExpressionNode.h.

Member Data Documentation

◆ expression1_

template<class T , class A1 , class A2 , class A3 >
std::shared_ptr<ExpressionNode<A1> > gtsam::internal::TernaryExpression< T, A1, A2, A3 >::expression1_
private

Definition at line 444 of file ExpressionNode.h.

◆ expression2_

template<class T , class A1 , class A2 , class A3 >
std::shared_ptr<ExpressionNode<A2> > gtsam::internal::TernaryExpression< T, A1, A2, A3 >::expression2_
private

Definition at line 445 of file ExpressionNode.h.

◆ expression3_

template<class T , class A1 , class A2 , class A3 >
std::shared_ptr<ExpressionNode<A3> > gtsam::internal::TernaryExpression< T, A1, A2, A3 >::expression3_
private

Definition at line 446 of file ExpressionNode.h.

◆ function_

template<class T , class A1 , class A2 , class A3 >
Function gtsam::internal::TernaryExpression< T, A1, A2, A3 >::function_
private

Definition at line 447 of file ExpressionNode.h.


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


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:47:15