31#ifndef ETL_IO_PORT_INCLUDED
32#define ETL_IO_PORT_INCLUDED
49 template <
typename T, u
intptr_t ADDRESS = 0>
129 template <
typename T, u
intptr_t ADDRESS = 0>
193 template <
typename T, u
intptr_t ADDRESS = 0>
257 template <
typename T, u
intptr_t ADDRESS = 0>
342 template <
typename T>
354 : address(ETL_NULLPTR)
453 template <
typename T>
465 : address(ETL_NULLPTR)
542 template <
typename T>
554 : address(ETL_NULLPTR)
637 template <
typename T>
706 : address(ETL_NULLPTR)
718 : shadow_value(
other_.shadow_value),
726 shadow_value =
other_.shadow_value;
771 *address = shadow_value;
778 *address = shadow_value;
void set_address(void *address_)
Set the IO port address.
Definition io_port.h:489
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:495
T read() const
Read.
Definition io_port.h:507
io_port_ro(void *address_)
Constructor.
Definition io_port.h:470
io_port_ro()
Default constructor.
Definition io_port.h:464
io_port_ro(const io_port_ro &other_)
Copy Constructor.
Definition io_port.h:476
Read only port.
Definition io_port.h:131
io_port_ro & operator++()
Increment.
Definition io_port.h:158
T read() const
Read.
Definition io_port.h:146
pointer get_address()
Get the IO port address.
Definition io_port.h:170
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:176
const_reference operator*() const
Read.
Definition io_port.h:152
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:390
pointer get_address()
Get the IO port address.
Definition io_port.h:384
T read() const
Read.
Definition io_port.h:402
io_port_rw(const io_port_rw &other_)
Copy Constructor.
Definition io_port.h:365
void set_address(void *address_)
Set the IO port address.
Definition io_port.h:378
io_port_rw(void *address_)
Constructor.
Definition io_port.h:359
io_port_rw()
Default constructor.
Definition io_port.h:353
void write(T value_)
Write.
Definition io_port.h:408
Read write port.
Definition io_port.h:51
T read() const
Read.
Definition io_port.h:66
reference operator*()
Read / Write.
Definition io_port.h:85
pointer get_address()
Get the IO port address.
Definition io_port.h:109
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:115
io_port_rw & operator=(T value_)
Write.
Definition io_port.h:78
io_port_rw & operator++()
Increment.
Definition io_port.h:97
void write(T value_)
Write.
Definition io_port.h:72
io_port_wo(const io_port_wo &other_)
Copy Constructor.
Definition io_port.h:565
void set_address(void *address_)
Set the IO port address.
Definition io_port.h:578
pointer get_address()
Get the IO port address.
Definition io_port.h:584
io_port_wo(void *address_)
Constructor.
Definition io_port.h:559
void write(T value_)
Write.
Definition io_port.h:596
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:590
io_port_wo()
Default constructor.
Definition io_port.h:553
Write only port.
Definition io_port.h:195
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:240
void write(T value_)
Write.
Definition io_port.h:210
pointer get_address()
Get the IO port address.
Definition io_port.h:234
io_port_wo & operator*()
Write.
Definition io_port.h:216
void operator=(T value)
Write.
Definition io_port.h:204
io_port_wo & operator++()
Increment.
Definition io_port.h:222
const_pointer get_address() const
Get the IO port address.
Definition io_port.h:744
iterator get_iterator()
Get the iterator.
Definition io_port.h:750
pointer get_address()
Get the IO port address.
Definition io_port.h:738
void set_address(void *address_)
Set the IO port address.
Definition io_port.h:732
void write(T value_)
Write.
Definition io_port.h:768
io_port_wos(void *address_)
Constructor.
Definition io_port.h:711
io_port_wos()
Default constructor.
Definition io_port.h:705
T read() const
Read.
Definition io_port.h:762
io_port_wos(const io_port_wos &other_)
Copy Constructor.
Definition io_port.h:717
Write only port with shadow register.
Definition io_port.h:259
io_port_wos & operator=(T value_)
Write.
Definition io_port.h:293
void write(T value_)
Write.
Definition io_port.h:286
io_port_wos & operator++()
Increment.
Definition io_port.h:313
T read() const
Read.
Definition io_port.h:280
io_port_wos()
Default constructor.
Definition io_port.h:268
pointer get_address()
Get the IO port address.
Definition io_port.h:325
io_port_wos & operator*()
Read / Write.
Definition io_port.h:301
bitset_ext
Definition absolute.h:38
iterator
Definition iterator.h:399
pair holds two objects of arbitrary type
Definition utility.h:164