NSVD Reader  0.0.1
nodamushi::svd::normalized::Field< STRREF > Struct Template Reference

normalized field element More...

#include <Field.hpp>

Public Types

using this_t = Field< STRREF >
 
using Peripheral = ::nodamushi::svd::normalized::Peripheral< STRREF >
 
using Register = ::nodamushi::svd::normalized::Register< STRREF >
 
using Enumeration = ::nodamushi::svd::normalized::Enumeration< STRREF >
 
using p_ptr = parent_ptr< Register >
 

Public Member Functions

unsigned int lsb () const
 get lsb bit index. More...
 
unsigned int msb () const
 get msb bit index. More...
 
node_ptr< Register const > get_parent () const noexcept
 get parent register pointer More...
 
node_ptr< Registerget_parent () noexcept
 get parent register pointer More...
 
node_ptr< Peripheral const > get_peripheral () const noexcept
 find the Peripheral to which this field belongs. More...
 
node_ptr< Peripheralget_peripheral () noexcept
 find the Peripheral to which this field belongs. More...
 
Access get_access () const
 resolve the value of access and return it. More...
 
ModifiedWriteValues get_modifiedWriteValues () const
 resolve the value of modifiedWriteValues and return it. More...
 
ReadAction get_readAction () const
 resolve the value of readAction and return it. More...
 
uint64_t get_resetValue ()
 get reset value More...
 
template<typename STR >
node_ptr< Enumerationfind (const ::nodamushi::svd::path< STR > &p, size_t pindex=0)
 find path element More...
 
template<typename T >
 Field (const T &n)
 
void update_parent (p_ptr &new_parent, node_ptr< this_t > &me)
 
constexpr void * get_parent2 () const noexcept
 allways return nullptr More...
 

Public Attributes

path< STRREF > derivedFrom
 derivedFrom Path More...
 
std::string name
 name of this field More...
 
dim_info dim
 dimemtion information object. More...
 
bit_range bit
 bit range More...
 
STRREF description
 description More...
 
nullable< Accessaccess
 <access> type. More...
 
nullable< ModifiedWriteValuesmodifiedWriteValues
 <modifiedWriteValues> More...
 
nullable< ReadActionreadAction
 <readAction> More...
 
list< EnumerationenumeratedValues
 <enumeratedValues> list Enumeration class does not prohibit copying, but basically it should be treated with a reference. More...
 

Detailed Description

template<typename STRREF>
struct nodamushi::svd::normalized::Field< STRREF >

normalized field element

See also
http://www.keil.com/pack/doc/CMSIS/SVD/html/elem_registers.html#elem_field
nodamushi::svd::Field

Definition at line 32 of file Field.hpp.

Member Typedef Documentation

◆ Enumeration

template<typename STRREF>
using nodamushi::svd::normalized::Field< STRREF >::Enumeration = ::nodamushi::svd::normalized::Enumeration<STRREF>

Definition at line 37 of file Field.hpp.

◆ p_ptr

template<typename STRREF>
using nodamushi::svd::normalized::Field< STRREF >::p_ptr = parent_ptr<Register>

Definition at line 39 of file Field.hpp.

◆ Peripheral

template<typename STRREF>
using nodamushi::svd::normalized::Field< STRREF >::Peripheral = ::nodamushi::svd::normalized::Peripheral<STRREF>

Definition at line 35 of file Field.hpp.

◆ Register

template<typename STRREF>
using nodamushi::svd::normalized::Field< STRREF >::Register = ::nodamushi::svd::normalized::Register<STRREF>

Definition at line 36 of file Field.hpp.

◆ this_t

template<typename STRREF>
using nodamushi::svd::normalized::Field< STRREF >::this_t = Field<STRREF>

Definition at line 34 of file Field.hpp.

Constructor & Destructor Documentation

◆ Field()

template<typename STRREF>
template<typename T >
nodamushi::svd::normalized::Field< STRREF >::Field ( const T &  n)
inline
Parameters
Tpre normalized Field

Definition at line 158 of file Field.hpp.

Member Function Documentation

◆ find()

template<typename STRREF>
template<typename STR >
node_ptr<Enumeration> nodamushi::svd::normalized::Field< STRREF >::find ( const ::nodamushi::svd::path< STR > &  p,
size_t  pindex = 0 
)
inline

find path element

Parameters
ppath
pindexthe first index of serach path. default is 0.
Returns
element pointer

Definition at line 137 of file Field.hpp.

◆ get_access()

template<typename STRREF>
Access nodamushi::svd::normalized::Field< STRREF >::get_access ( ) const
inline

resolve the value of access and return it.

Definition at line 108 of file Field.hpp.

◆ get_modifiedWriteValues()

template<typename STRREF>
ModifiedWriteValues nodamushi::svd::normalized::Field< STRREF >::get_modifiedWriteValues ( ) const
inline

resolve the value of modifiedWriteValues and return it.

Definition at line 112 of file Field.hpp.

◆ get_parent() [1/2]

template<typename STRREF>
node_ptr<Register const> nodamushi::svd::normalized::Field< STRREF >::get_parent ( ) const
inlinenoexcept

get parent register pointer

Returns
parent register pointer

Definition at line 95 of file Field.hpp.

◆ get_parent() [2/2]

template<typename STRREF>
node_ptr<Register> nodamushi::svd::normalized::Field< STRREF >::get_parent ( )
inlinenoexcept

get parent register pointer

Returns
parent register pointer

Definition at line 100 of file Field.hpp.

◆ get_parent2()

template<typename STRREF>
constexpr void* nodamushi::svd::normalized::Field< STRREF >::get_parent2 ( ) const
inlinenoexcept

allways return nullptr

Definition at line 180 of file Field.hpp.

◆ get_peripheral() [1/2]

template<typename STRREF>
node_ptr<Peripheral const> nodamushi::svd::normalized::Field< STRREF >::get_peripheral ( ) const
inlinenoexcept

find the Peripheral to which this field belongs.

Definition at line 103 of file Field.hpp.

◆ get_peripheral() [2/2]

template<typename STRREF>
node_ptr<Peripheral> nodamushi::svd::normalized::Field< STRREF >::get_peripheral ( )
inlinenoexcept

find the Peripheral to which this field belongs.

Definition at line 105 of file Field.hpp.

◆ get_readAction()

template<typename STRREF>
ReadAction nodamushi::svd::normalized::Field< STRREF >::get_readAction ( ) const
inline

resolve the value of readAction and return it.

Definition at line 116 of file Field.hpp.

◆ get_resetValue()

template<typename STRREF>
uint64_t nodamushi::svd::normalized::Field< STRREF >::get_resetValue ( )
inline

get reset value

Returns
reset value

Definition at line 123 of file Field.hpp.

◆ lsb()

template<typename STRREF>
unsigned int nodamushi::svd::normalized::Field< STRREF >::lsb ( ) const
inline

get lsb bit index.

Returns
bit.lsb()

Definition at line 84 of file Field.hpp.

◆ msb()

template<typename STRREF>
unsigned int nodamushi::svd::normalized::Field< STRREF >::msb ( ) const
inline

get msb bit index.

Returns
bit.msb()

Definition at line 89 of file Field.hpp.

◆ update_parent()

template<typename STRREF>
void nodamushi::svd::normalized::Field< STRREF >::update_parent ( p_ptr new_parent,
node_ptr< this_t > &  me 
)
inline

Definition at line 175 of file Field.hpp.

Member Data Documentation

◆ access

template<typename STRREF>
nullable<Access> nodamushi::svd::normalized::Field< STRREF >::access

<access> type.

See also
get_access()

Definition at line 59 of file Field.hpp.

◆ bit

template<typename STRREF>
bit_range nodamushi::svd::normalized::Field< STRREF >::bit

bit range

Definition at line 52 of file Field.hpp.

◆ derivedFrom

template<typename STRREF>
path<STRREF> nodamushi::svd::normalized::Field< STRREF >::derivedFrom

derivedFrom Path

Definition at line 46 of file Field.hpp.

◆ description

template<typename STRREF>
STRREF nodamushi::svd::normalized::Field< STRREF >::description

description

Definition at line 54 of file Field.hpp.

◆ dim

template<typename STRREF>
dim_info nodamushi::svd::normalized::Field< STRREF >::dim

dimemtion information object.

Definition at line 50 of file Field.hpp.

◆ enumeratedValues

template<typename STRREF>
list<Enumeration> nodamushi::svd::normalized::Field< STRREF >::enumeratedValues

<enumeratedValues> list Enumeration class does not prohibit copying, but basically it should be treated with a reference.

auto& e = field.enemeratedValues[0];

Definition at line 78 of file Field.hpp.

◆ modifiedWriteValues

template<typename STRREF>
nullable<ModifiedWriteValues> nodamushi::svd::normalized::Field< STRREF >::modifiedWriteValues

<modifiedWriteValues>

See also
get_modifiedWriteValues()

Definition at line 64 of file Field.hpp.

◆ name

template<typename STRREF>
std::string nodamushi::svd::normalized::Field< STRREF >::name

name of this field

Definition at line 48 of file Field.hpp.

◆ readAction

template<typename STRREF>
nullable<ReadAction> nodamushi::svd::normalized::Field< STRREF >::readAction

<readAction>

See also
get_readAction()

Definition at line 69 of file Field.hpp.


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