MFMv2.0.10
Movable Feast Machine Simulator 2.0.10
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
MFM::ElementParameterNeighborhood< CC, SITES > Class Template Reference
Inheritance diagram for MFM::ElementParameterNeighborhood< CC, SITES >:
MFM::ElementParameterBits< CC, SITES > MFM::ElementParameter< CC > MFM::Parameter< CC > MFM::ByteSerializable

Public Member Functions

 ElementParameterNeighborhood (Element< CC > *elt, const char *tag, const char *name, const char *description, u64 vdef)
 
virtual ByteSerializable::Result PrintTo (ByteSink &byteSink, s32 argument=0)
 
virtual ByteSerializable::Result PrintU64AsNeighborhood (ByteSink &byteSink, u64 nghb)
 
virtual ByteSerializable::Result ReadFrom (ByteSource &byteSource, s32 argument=0)
 
virtual ByteSerializable::Result ReadNeighborhoodAsU64 (ByteSource &byteSource, u64 &ngb)
 
bool ReadValue (ByteSource &bs)
 
- Public Member Functions inherited from MFM::ElementParameterBits< CC, SITES >
 ElementParameterBits (Element< CC > *elt, const char *tag, const char *name, const char *description, u64 vdef)
 
u64 GetValue () const
 
void SetValue (u64 val)
 
void ClearBit (u32 bitnum)
 
void SetBit (u32 bitnum)
 
bool GetBit (u32 bitnum) const
 
- Public Member Functions inherited from MFM::ElementParameter< CC >
const T & GetAtom () const
 
T & GetAtom ()
 
void PrintValue (ByteSink &bs)
 
ElementParameterGetNextParameter ()
 
const ElementParameterGetNextParameter () const
 
 ElementParameter (Element< CC > *elt, u32 type, const char *tag, const char *name, const char *description, s32 min, s32 vdef, s32 max)
 
 ElementParameter (Element< CC > *elt, u32 type, const char *tag, const char *name, const char *description, u64 vdef)
 
s32 GetBitsAsS32 () const
 Un-type-checked access treating all bit fields as s32.
 
void SetBitsAsS32 (const s32 val)
 
u64 GetBitsAsU64 () const
 
void SetBitsAsU64 (const u64 val)
 
virtual void Reset ()
 
u32 GetValueU32 () const
 u32 value
 
void SetValueU32 (const u32 val)
 
s32 GetValueS32 () const
 s32 value
 
void SetValueS32 (const s32 val)
 
bool GetValueBool () const
 bool value
 
void SetValueBool (const bool val)
 
u32 GetValueUnary () const
 unary value
 
void SetValueUnary (const u32 val) const
 
u64 GetValueBits () const
 bits value
 
void SetValueBits (const u64 val) const
 
- Public Member Functions inherited from MFM::Parameter< CC >
u32 GetType () const
 
s32 GetMin () const
 
s32 GetDefault () const
 
s32 GetMax () const
 
u32 GetRange () const
 
u32 MapValue (u32 max, s32 val) const
 
virtual void Print (ByteSink &bs)
 
void PrintValue (ByteSink &bs, const T &atom)
 
virtual bool ReadValue (ByteSource &bs, T &atom)
 
s32 GetBitsAsS32 (const T &atom) const
 Un-type-checked access treating all bit fields as s32.
 
void SetBitsAsS32 (T &atom, const s32 val) const
 
u64 GetBitsAsU64 (const T &atom) const
 Un-type-checked access treating all bit fields as u64.
 
void SetBitsAsU64 (T &atom, const u64 val) const
 
bool LoadU32 (const T &atom, u32 &store) const
 Routines to (attempt to) apply this parameter to any given atom. More...
 
void StoreU32 (T &atom, const u32 val) const
 
bool LoadS32 (const T &atom, s32 &store) const
 s32 value
 
void StoreS32 (T &atom, const s32 val) const
 
bool LoadBool (const T &atom, bool &store) const
 bool value
 
void StoreBool (T &atom, const bool val) const
 
bool LoadUnary (const T &atom, u32 &store) const
 unary value
 
void StoreUnary (T &atom, const u32 val) const
 
 Parameter (const VD &vd, const char *tag, const char *name, const char *description)
 
const VDGetVD () const
 
const char * GetTag () const
 
const char * GetName () const
 
const char * GetDescription () const
 

Additional Inherited Members

- Public Types inherited from MFM::ElementParameter< CC >
typedef BitVector< BPA > BV
 
typedef BitField< BV, VD::U32,
PARM_LENGTH, START_POS > 
FieldU32
 
typedef BitField< BV, VD::S32,
PARM_LENGTH, START_POS > 
FieldS32
 
typedef BitField< BV, VD::BOOL,
PARM_LENGTH, START_POS > 
FieldBool
 
typedef BitField< BV,
VD::UNARY, PARM_LENGTH,
START_POS > 
FieldUnary
 
typedef BitField< BV, VD::BITS,
LONG_PARM_LENGTH,
LONG_START_POS > 
FieldBits
 
- Public Types inherited from MFM::ByteSerializable
enum  Result { UNSUPPORTED = -1, FAILURE = 0, SUCCESS = 1 }
 

Member Function Documentation

template<class CC, u32 SITES>
virtual ByteSerializable::Result MFM::ElementParameterNeighborhood< CC, SITES >::PrintTo ( ByteSink byteSink,
s32  argument = 0 
)
inlinevirtual

Print a representation of this ByteSerializble to the given byteSink, with its details possibly modified by argument. The meaning of argument is unspecified except that 0 should be interpreted as a request for default, 'no modification', formatting.

Returns
UNSUPPORTED if this object doesn't support printing itself, or SUCCESS if the printing was successful and FAIL if there was any problem.

Implements MFM::ByteSerializable.

template<class CC, u32 SITES>
virtual ByteSerializable::Result MFM::ElementParameterNeighborhood< CC, SITES >::ReadFrom ( ByteSource byteSource,
s32  argument = 0 
)
inlinevirtual

Modify this object by reading a representation of a ByteSerializable from the given byteSource, with its details possibly modified by argument. The meaning of argument is unspecified except that 0 should be interpreted as a request for default, 'no modification', interpretation.

Returns
UNSUPPORTED if this object doesn't support reading itself, or SUCCESS if the reading was successful and FAIL if there was any problem.

Implements MFM::ByteSerializable.


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