28 #ifndef ELEMENT_INDEXED_H
29 #define ELEMENT_INDEXED_H
48 typedef typename CC::ATOM_TYPE T;
49 typedef typename CC::PARAM_CONFIG P;
60 static const u32 TYPE() {
71 const T& me,
const SPoint& offset)
const
91 return ColorMap_DIV6_RdYlGn::THE_INSTANCE.
92 GetSelectedColor(idx%6, 0, 5, 0xffff0000);
102 return "An Element wih an index number.";
109 LOG.
Debug(
"IDX#%3d@%p(%2d,%2d)",
120 static T defaultAtom(TYPE(), 0, 0, BITS_IN_INDEX);
121 static u32 index = 0;
129 Element_Indexed<CC> Element_Indexed<CC>::THE_INSTANCE;
static void Write(BV &bv, u32 val)
Definition: BitField.h:84
void Diffuse(EventWindow< CC > &window) const
Definition: Element.tcc:73
u32 GetType() const
Definition: Element.h:290
static u32 Read(const BV &bv)
Definition: BitField.h:73
virtual u32 LocalPhysicsColor(const T &atom, u32 selector) const
Definition: Element_Indexed.h:86
Tile< CC > & GetTile()
Definition: EventWindow.h:132
void SetName(const char *name)
Definition: Element.h:209
void SetAtomicSymbol(const char *symbol)
Definition: Element.h:193
const T & GetCenterAtom() const
Definition: EventWindow.h:209
const SPoint & GetCenterInTile() const
Definition: EventWindow.h:180
virtual u32 PercentMovable(const T &you, const T &me, const SPoint &offset) const
Definition: Element_Indexed.h:70
Definition: Element_Indexed.h:45
virtual u32 DefaultLowlightColor() const
Definition: Element_Indexed.h:81
virtual const T & GetDefaultAtom() const
Definition: Element_Indexed.h:118
void Debug(const char *format,...)
Definition: Logger.h:301
virtual const char * GetDescription() const
Definition: Element_Indexed.h:100
virtual void Behavior(EventWindow< CC > &window) const
Definition: Element_Indexed.h:105
Definition: ElementTable.h:43
Definition: BitVector.h:47
const BitVector< P::BITS_PER_ATOM > & GetBits(const T &atom) const
Definition: Element.h:132
virtual u32 DefaultPhysicsColor() const
Definition: Element_Indexed.h:76