NSVD Reader  0.0.1
nodamushi::svd::Cluster< STR > Struct Template Reference

<cluster> element More...

#include <Cluster.hpp>

Inheritance diagram for nodamushi::svd::Cluster< STR >:

Public Types

using rc_t = ::nodamushi::svd::reg_or_cluster< Register< STR >, Cluster< STR > >
 
using reg_t = typename rc_t::reg_t
 
using clu_t = typename rc_t::clu_t
 

Public Member Functions

size_t length () const
 
rc_toperator[] (size_t i)
 
const rc_toperator[] (size_t i) const
 

Public Attributes

value< path< std::string >,ATTR > derivedFrom
 derivedFrom attribute More...
 
value< dim_type,ELEMENT > dim
 <dim> More...
 
value< dimInc_type,ELEMENT > dimIncrement
 <dimIncrement> More...
 
value< dimIndex,ELEMENT > dimIndex
 <dimIndex> More...
 
value< dimName< STR >,ELEMENT > dimName
 <dimName> More...
 
value< DimArrayIndex< STR >,ELEMENT > dimArrayIndex
 <dimArrayIndex> More...
 
value< STR,ELEMENT > name
 <name> this element is required. More...
 
value< STR,ELEMENT > description
 <description> this element is required More...
 
value< STR,ELEMENT > alternateCluster
 <alternateCluster> More...
 
value< STR,ELEMENT > headerStructName
 <headerStructName> More...
 
value< hex64,ELEMENT > addressOffset
 <addressOffset>. uint64_t.this element is required More...
 
value< hex32,ELEMENT > size
 <size>. uint32_t.this element is required More...
 
value< Access,ELEMENT > access
 <access> More...
 
value< Protection,ELEMENT > protection
 <protection> More...
 
value< hex64,ELEMENT > resetValue
 <resteValue> More...
 
value< hex64,ELEMENT > resetMask
 <resetMask> More...
 
Registers< STR > registers
 <register> or <cluster> More...
 

Static Public Attributes

static constexpr bool IS_REGISTER =false
 
static constexpr bool IS_CLUSTER =true
 

Detailed Description

template<typename STR>
struct nodamushi::svd::Cluster< STR >

<cluster> element

See also
nodamushi::svd::Peripheral
nodamushi::svd::Register
nodamushi::svd::normalized::Cluster

Definition at line 36 of file Cluster.hpp.

Member Typedef Documentation

◆ clu_t

template<typename STR>
using nodamushi::svd::Cluster< STR >::clu_t = typename rc_t::clu_t

Definition at line 95 of file Cluster.hpp.

◆ rc_t

template<typename STR>
using nodamushi::svd::Cluster< STR >::rc_t = ::nodamushi::svd::reg_or_cluster<Register<STR>,Cluster<STR> >

Definition at line 93 of file Cluster.hpp.

◆ reg_t

template<typename STR>
using nodamushi::svd::Cluster< STR >::reg_t = typename rc_t::reg_t

Definition at line 94 of file Cluster.hpp.

Member Function Documentation

◆ length()

template<typename STR>
size_t nodamushi::svd::Cluster< STR >::length ( ) const
inline
Returns
count of <register> or <cluster>

Definition at line 140 of file Cluster.hpp.

◆ operator[]() [1/2]

template<typename STR>
rc_t& nodamushi::svd::Cluster< STR >::operator[] ( size_t  i)
inline

short cut method.

cluster.registers[x] == cluster[x]
Returns
<register> or <cluster>

Definition at line 148 of file Cluster.hpp.

◆ operator[]() [2/2]

template<typename STR>
const rc_t& nodamushi::svd::Cluster< STR >::operator[] ( size_t  i) const
inline

short cut method.

cluster.registers[x] == cluster[x]
Returns
<register> or <cluster>

Definition at line 157 of file Cluster.hpp.

Member Data Documentation

◆ access

template<typename STR>
value< Access ,ELEMENT> nodamushi::svd::Cluster< STR >::access

<access>

Definition at line 125 of file Cluster.hpp.

◆ addressOffset

template<typename STR>
value< hex64 ,ELEMENT> nodamushi::svd::Cluster< STR >::addressOffset

<addressOffset>. uint64_t.this element is required

Definition at line 121 of file Cluster.hpp.

◆ alternateCluster

template<typename STR>
value< STR ,ELEMENT> nodamushi::svd::Cluster< STR >::alternateCluster

<alternateCluster>

Definition at line 116 of file Cluster.hpp.

◆ derivedFrom

template<typename STR>
value< path<std::string> ,ATTR> nodamushi::svd::Cluster< STR >::derivedFrom

derivedFrom attribute

Definition at line 98 of file Cluster.hpp.

◆ description

template<typename STR>
value< STR ,ELEMENT> nodamushi::svd::Cluster< STR >::description

<description> this element is required

Definition at line 114 of file Cluster.hpp.

◆ dim

template<typename STR>
value< dim_type ,ELEMENT> nodamushi::svd::Cluster< STR >::dim

<dim>

Definition at line 101 of file Cluster.hpp.

◆ dimArrayIndex

template<typename STR>
value< DimArrayIndex<STR> ,ELEMENT> nodamushi::svd::Cluster< STR >::dimArrayIndex

<dimArrayIndex>

Definition at line 109 of file Cluster.hpp.

◆ dimIncrement

template<typename STR>
value< dimInc_type ,ELEMENT> nodamushi::svd::Cluster< STR >::dimIncrement

<dimIncrement>

Definition at line 103 of file Cluster.hpp.

◆ dimIndex

template<typename STR>
value< dimIndex ,ELEMENT> nodamushi::svd::Cluster< STR >::dimIndex

<dimIndex>

Definition at line 105 of file Cluster.hpp.

◆ dimName

template<typename STR>
value< dimName<STR> ,ELEMENT> nodamushi::svd::Cluster< STR >::dimName

<dimName>

Definition at line 107 of file Cluster.hpp.

◆ headerStructName

template<typename STR>
value< STR ,ELEMENT> nodamushi::svd::Cluster< STR >::headerStructName

<headerStructName>

Definition at line 118 of file Cluster.hpp.

◆ IS_CLUSTER

template<typename STR>
constexpr bool nodamushi::svd::Cluster< STR >::IS_CLUSTER =true
static

Definition at line 92 of file Cluster.hpp.

◆ IS_REGISTER

template<typename STR>
constexpr bool nodamushi::svd::Cluster< STR >::IS_REGISTER =false
static

Definition at line 91 of file Cluster.hpp.

◆ name

template<typename STR>
value< STR ,ELEMENT> nodamushi::svd::Cluster< STR >::name

<name> this element is required.

Definition at line 112 of file Cluster.hpp.

◆ protection

template<typename STR>
value< Protection ,ELEMENT> nodamushi::svd::Cluster< STR >::protection

<protection>

Definition at line 127 of file Cluster.hpp.

◆ registers

template<typename STR>
Registers<STR> nodamushi::svd::Cluster< STR >::registers

<register> or <cluster>

Note
cluster does not have a <registers> element.

Definition at line 137 of file Cluster.hpp.

◆ resetMask

template<typename STR>
value< hex64 ,ELEMENT> nodamushi::svd::Cluster< STR >::resetMask

<resetMask>

Definition at line 131 of file Cluster.hpp.

◆ resetValue

template<typename STR>
value< hex64 ,ELEMENT> nodamushi::svd::Cluster< STR >::resetValue

<resteValue>

Definition at line 129 of file Cluster.hpp.

◆ size

template<typename STR>
value< hex32 ,ELEMENT> nodamushi::svd::Cluster< STR >::size

<size>. uint32_t.this element is required

Definition at line 123 of file Cluster.hpp.


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