void cVirtualMemoryAccesser::writeUint(addressNumericValue address, uint value) { // If this change, than the implementation must be changed also ASSERT(sizeof(uint) == sizeof(uint32)); #if defined(XSTL_32BIT) uint8 buf[4]; writeUint32(buf, (uint32)value); #elif defined(XSTL_64BIT) uint8 buf[8]; writeUint64(buf, (uint64)value); #else #error Please add machine word support #endif if (!write(address, buf, sizeof(buf))) XSTL_THROW(cException, EXCEPTION_OUT_OF_RANGE); }
bool eaio::writeInt64(IStream* pOS, const int64_t* value, size_type count, Endian endianDestination) { return writeUint64(pOS, (uint64_t*)value, count, endianDestination); }
bool eaio::writeDouble(IStream* pOS, const double_t* value, size_type count, Endian endianDestination) { return writeUint64(pOS, (const uint64_t*)(const char*)value, count, endianDestination); }
bool eaio::writeInt64(IStream* pOS, int64_t value, Endian endianDestination) { return writeUint64(pOS, (uint64_t)value, endianDestination); }