Public Member Functions | Private Attributes | List of all members
vil_nitf2_choose_field_value< T > Class Template Reference

Functor vil_nitf2_choose_field_value defines a function that sets its out parameter to a value of one of two fields of a field sequence. More...

#include <vil_nitf2_field_functor.h>

Inheritance diagram for vil_nitf2_choose_field_value< T >:
Inheritance graph
[legend]

Public Member Functions

 vil_nitf2_choose_field_value (std::string tag_1, std::string tag_2, vil_nitf2_field_functor< bool > *choose_tag_1_predicate)
 Constructor. I take ownership of inDecider. More...
 
vil_nitf2_field_functor< T > * copy () const override
 
 ~vil_nitf2_choose_field_value () override
 
bool operator() (vil_nitf2_field_sequence *record, const vil_nitf2_index_vector &indexes, T &value) override
 

Private Attributes

std::string tag_1
 
std::string tag_2
 
vil_nitf2_field_functor< bool > * choose_tag_1_predicate
 

Detailed Description

template<typename T>
class vil_nitf2_choose_field_value< T >

Functor vil_nitf2_choose_field_value defines a function that sets its out parameter to a value of one of two fields of a field sequence.

The field chosen is determined by the evaluating the functor passed as argument 'choose_tag_1_predicate': tag_1 is chosen if it evaluates to true; tag_2, otherwise.

Definition at line 266 of file vil_nitf2_field_functor.h.

Constructor & Destructor Documentation

◆ vil_nitf2_choose_field_value()

template<typename T >
vil_nitf2_choose_field_value< T >::vil_nitf2_choose_field_value ( std::string  tag_1,
std::string  tag_2,
vil_nitf2_field_functor< bool > *  choose_tag_1_predicate 
)
inline

Constructor. I take ownership of inDecider.

Definition at line 270 of file vil_nitf2_field_functor.h.

◆ ~vil_nitf2_choose_field_value()

template<typename T >
vil_nitf2_choose_field_value< T >::~vil_nitf2_choose_field_value ( )
inlineoverride

Definition at line 278 of file vil_nitf2_field_functor.h.

Member Function Documentation

◆ copy()

template<typename T >
vil_nitf2_field_functor<T>* vil_nitf2_choose_field_value< T >::copy ( ) const
inlineoverridevirtual

Implements vil_nitf2_field_functor< T >.

Definition at line 274 of file vil_nitf2_field_functor.h.

◆ operator()()

template<typename T >
bool vil_nitf2_choose_field_value< T >::operator() ( vil_nitf2_field_sequence record,
const vil_nitf2_index_vector indexes,
T &  value 
)
inlineoverridevirtual

Implements vil_nitf2_field_functor< T >.

Definition at line 282 of file vil_nitf2_field_functor.h.

Member Data Documentation

◆ choose_tag_1_predicate

template<typename T >
vil_nitf2_field_functor<bool>* vil_nitf2_choose_field_value< T >::choose_tag_1_predicate
private

Definition at line 294 of file vil_nitf2_field_functor.h.

◆ tag_1

template<typename T >
std::string vil_nitf2_choose_field_value< T >::tag_1
private

Definition at line 292 of file vil_nitf2_field_functor.h.

◆ tag_2

template<typename T >
std::string vil_nitf2_choose_field_value< T >::tag_2
private

Definition at line 293 of file vil_nitf2_field_functor.h.


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