void CECTag::InitInt(uint64 data) { if (data <= 0xFF) { m_dataType = EC_TAGTYPE_UINT8; m_dataLen = 1; } else if (data <= 0xFFFF) { m_dataType = EC_TAGTYPE_UINT16; m_dataLen = 2; } else if (data <= 0xFFFFFFFF) { m_dataType = EC_TAGTYPE_UINT32; m_dataLen = 4; } else { m_dataType = EC_TAGTYPE_UINT64; m_dataLen = 8; } NewData(); switch (m_dataType) { case EC_TAGTYPE_UINT8: PokeUInt8( m_tagData, (uint8) data ); break; case EC_TAGTYPE_UINT16: PokeUInt16( m_tagData, wxUINT16_SWAP_ALWAYS((uint16) data )); break; case EC_TAGTYPE_UINT32: PokeUInt32( m_tagData, wxUINT32_SWAP_ALWAYS((uint32) data )); break; case EC_TAGTYPE_UINT64: PokeUInt64( m_tagData, wxUINT64_SWAP_ALWAYS(data) ); break; } }
wxUint32 component_buffer::component_iterator::operator *() const { if (m_inc == sizeof(wxUint8)) { return (wxUint32)(*(wxUint8 *)m_ptr); } else if (m_inc == sizeof(wxUint16)) { if (m_endian == endian_little) { return (wxUint32)(*(wxUint16*)m_ptr); } else { return (wxUint32)(wxUINT16_SWAP_ALWAYS(*(wxUint16*)m_ptr)); } } return 0; }