#include "stdafx.h" #include "TickNextTickData.h" __int64 TickNextTickData::C = 0; TickNextTickData::TickNextTickData(int x, int y, int z, int tileId) { m_delay = 0; c = C++; this->x = x; this->y = y; this->z = z; this->tileId = tileId; } bool TickNextTickData::equals(const void *o) const { // TODO 4J Is this safe to cast it before we do a dynamic_cast? Will the dynamic_cast still fail? // We cannot dynamic_cast a void* if ( dynamic_cast( (TickNextTickData *) o ) != NULL) { TickNextTickData *t = (TickNextTickData *) o; return x == t->x && y == t->y && z == t->z && tileId == t->tileId; } return false; } int TickNextTickData::hashCode() const { return (((x * 1024 * 1024) + (z * 1024) + y) * 256) + tileId; } TickNextTickData *TickNextTickData::delay(__int64 l) { this->m_delay = l; return this; } int TickNextTickData::compareTo(const TickNextTickData *tnd) const { if (m_delay < tnd->m_delay) return -1; if (m_delay > tnd->m_delay) return 1; if (c < tnd->c) return -1; if (c > tnd->c) return 1; return 0; } //A class that takes two arguments of the same type as the container elements and returns a bool. //The expression comp(a,b), where comp is an object of this comparison class and a and b are elements of the container, //shall return true if a is to be placed at an earlier position than b in a strict weak ordering operation. //This can either be a class implementing a function call operator or a pointer to a function (see constructor for an example). //This defaults to less, which returns the same as applying the less-than operator (a