15 template<
typename U,
typename IRegister>
19 using reg_t = IRegister::reg_t;
20 using Register = IRegister;
21 using RegMem = IRegister::RegMem;
22 using Commander = IRegister::Commander;
30 virtual fld_t
get(
const RegMem ®mem)
const = 0;
35 virtual void set(RegMem ®mem, fld_t value)
const = 0;
42 virtual void read(RegMem ®mem, Commander &cmdr)
const = 0;
49 virtual void write(RegMem ®mem, Commander &cmdr, fld_t value)
const = 0;
Interface definition for field.
Definition: field.hpp:16
virtual void write(RegMem ®mem, Commander &cmdr, fld_t value) const =0
Set field value in memory and write commands sequence to modify field value in chip to cmdr buffer,...
virtual void set(RegMem ®mem, fld_t value) const =0
Set field value into the memory.
virtual std::string get_name() const =0
Properties.
virtual ~Field()=default
Default destructor.
virtual std::string get_desc() const =0
Get field description.
virtual fld_t get(const RegMem ®mem) const =0
Get field value from the memory.
virtual void read(RegMem ®mem, Commander &cmdr) const =0
Set field value in memory and write commands sequence to modify field value in chip to cmdr buffer,...