Vanetza
Loading...
Searching...
No Matches
vanetza::asn1::asn1c_wrapper_common< T > Class Template Reference
Inheritance diagram for vanetza::asn1::asn1c_wrapper_common< T >:

Public Types

typedef T asn1c_type

Public Member Functions

 asn1c_wrapper_common (asn_TYPE_descriptor_t &desc)
 asn1c_wrapper_common (asn_TYPE_descriptor_t &desc, const T *ptr)
 asn1c_wrapper_common (const asn1c_wrapper_common &other)
asn1c_wrapper_commonoperator= (const asn1c_wrapper_common &other)
 asn1c_wrapper_common (asn1c_wrapper_common &&other) noexcept
asn1c_wrapper_commonoperator= (asn1c_wrapper_common &&other) noexcept
asn1c_type & operator* ()
asn1c_type * operator-> ()
const asn1c_type & operator* () const
const asn1c_type * operator-> () const
const asn1c_type * content () const
asn1c_type * content ()
bool operator== (const asn1c_wrapper_common &rhs) const
bool operator!= (const asn1c_wrapper_common &rhs) const
bool validate () const
bool validate (std::string &error) const
int compare (const asn1c_wrapper_common &other) const
int print () const
int print (FILE *stream) const
void swap (asn1c_wrapper_common &other) noexcept

Protected Attributes

asn1c_type * m_struct
asn_TYPE_descriptor_t & m_type

Detailed Description

template<class T>
class vanetza::asn1::asn1c_wrapper_common< T >

Definition at line 43 of file asn1c_wrapper.hpp.

Member Typedef Documentation

◆ asn1c_type

template<class T>
typedef T vanetza::asn1::asn1c_wrapper_common< T >::asn1c_type

Definition at line 47 of file asn1c_wrapper.hpp.

Constructor & Destructor Documentation

◆ asn1c_wrapper_common() [1/4]

template<class T>
vanetza::asn1::asn1c_wrapper_common< T >::asn1c_wrapper_common ( asn_TYPE_descriptor_t & desc)
inline

Definition at line 49 of file asn1c_wrapper.hpp.

◆ asn1c_wrapper_common() [2/4]

template<class T>
vanetza::asn1::asn1c_wrapper_common< T >::asn1c_wrapper_common ( asn_TYPE_descriptor_t & desc,
const T * ptr )
inline

Definition at line 51 of file asn1c_wrapper.hpp.

◆ ~asn1c_wrapper_common()

template<class T>
vanetza::asn1::asn1c_wrapper_common< T >::~asn1c_wrapper_common ( )
inline

Definition at line 53 of file asn1c_wrapper.hpp.

◆ asn1c_wrapper_common() [3/4]

template<class T>
vanetza::asn1::asn1c_wrapper_common< T >::asn1c_wrapper_common ( const asn1c_wrapper_common< T > & other)
inline

Definition at line 56 of file asn1c_wrapper.hpp.

◆ asn1c_wrapper_common() [4/4]

template<class T>
vanetza::asn1::asn1c_wrapper_common< T >::asn1c_wrapper_common ( asn1c_wrapper_common< T > && other)
inlinenoexcept

Definition at line 66 of file asn1c_wrapper.hpp.

Member Function Documentation

◆ compare()

template<class T>
int vanetza::asn1::asn1c_wrapper_common< T >::compare ( const asn1c_wrapper_common< T > & other) const
inline

Compare ASN.1 types

Parameters
otherOther ASN.1 type to compare with
Returns
0 if equal, <0 if other is "greater", >0 if other is "smaller"

Definition at line 119 of file asn1c_wrapper.hpp.

◆ content() [1/2]

template<class T>
asn1c_type * vanetza::asn1::asn1c_wrapper_common< T >::content ( )
inline

Definition at line 82 of file asn1c_wrapper.hpp.

◆ content() [2/2]

template<class T>
const asn1c_type * vanetza::asn1::asn1c_wrapper_common< T >::content ( ) const
inline

Definition at line 81 of file asn1c_wrapper.hpp.

◆ operator!=()

template<class T>
bool vanetza::asn1::asn1c_wrapper_common< T >::operator!= ( const asn1c_wrapper_common< T > & rhs) const
inline

Definition at line 89 of file asn1c_wrapper.hpp.

◆ operator*() [1/2]

template<class T>
asn1c_type & vanetza::asn1::asn1c_wrapper_common< T >::operator* ( )
inline

Definition at line 75 of file asn1c_wrapper.hpp.

◆ operator*() [2/2]

template<class T>
const asn1c_type & vanetza::asn1::asn1c_wrapper_common< T >::operator* ( ) const
inline

Definition at line 77 of file asn1c_wrapper.hpp.

◆ operator->() [1/2]

template<class T>
asn1c_type * vanetza::asn1::asn1c_wrapper_common< T >::operator-> ( )
inline

Definition at line 76 of file asn1c_wrapper.hpp.

◆ operator->() [2/2]

template<class T>
const asn1c_type * vanetza::asn1::asn1c_wrapper_common< T >::operator-> ( ) const
inline

Definition at line 78 of file asn1c_wrapper.hpp.

◆ operator=() [1/2]

template<class T>
asn1c_wrapper_common & vanetza::asn1::asn1c_wrapper_common< T >::operator= ( asn1c_wrapper_common< T > && other)
inlinenoexcept

Definition at line 68 of file asn1c_wrapper.hpp.

◆ operator=() [2/2]

template<class T>
asn1c_wrapper_common & vanetza::asn1::asn1c_wrapper_common< T >::operator= ( const asn1c_wrapper_common< T > & other)
inline

Definition at line 58 of file asn1c_wrapper.hpp.

◆ operator==()

template<class T>
bool vanetza::asn1::asn1c_wrapper_common< T >::operator== ( const asn1c_wrapper_common< T > & rhs) const
inline

Definition at line 85 of file asn1c_wrapper.hpp.

◆ print() [1/2]

template<class T>
int vanetza::asn1::asn1c_wrapper_common< T >::print ( ) const
inline

Print ASN.1 type to standard output

Returns
0 on success, -1 on error

Definition at line 128 of file asn1c_wrapper.hpp.

◆ print() [2/2]

template<class T>
int vanetza::asn1::asn1c_wrapper_common< T >::print ( FILE * stream) const
inline

Print ASN.1 type to some file stream

Parameters
streamOutput stream
Returns
0 on success, -1 on error

Definition at line 138 of file asn1c_wrapper.hpp.

◆ swap()

template<class T>
void vanetza::asn1::asn1c_wrapper_common< T >::swap ( asn1c_wrapper_common< T > & other)
inlinenoexcept

Swap ASN.1 wrapper content

Parameters
otherwrapper

Definition at line 147 of file asn1c_wrapper.hpp.

◆ validate() [1/2]

template<class T>
bool vanetza::asn1::asn1c_wrapper_common< T >::validate ( ) const
inline

Check ASN.1 constraints

Parameters
error(optional) copy of error message
Returns
true if valid

Definition at line 99 of file asn1c_wrapper.hpp.

◆ validate() [2/2]

template<class T>
bool vanetza::asn1::asn1c_wrapper_common< T >::validate ( std::string & error) const
inline

Check ASN.1 constraints

Parameters
errorError message if any constraint failed
Returns
true if valid

Definition at line 109 of file asn1c_wrapper.hpp.

Member Data Documentation

◆ m_struct

template<class T>
asn1c_type* vanetza::asn1::asn1c_wrapper_common< T >::m_struct
protected

Definition at line 154 of file asn1c_wrapper.hpp.

◆ m_type

template<class T>
asn_TYPE_descriptor_t& vanetza::asn1::asn1c_wrapper_common< T >::m_type
protected

Definition at line 155 of file asn1c_wrapper.hpp.


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