First commit for ICMP capabilities, added CPU::GetCacheLineSize(), and removed BaseObj from containers.
This commit is contained in:
@@ -21,7 +21,7 @@
|
||||
namespace ehs
|
||||
{
|
||||
template<typename N = UInt_64>
|
||||
class Serializer : public BaseObj
|
||||
class Serializer
|
||||
{
|
||||
private:
|
||||
Endianness endianness;
|
||||
@@ -30,7 +30,7 @@ namespace ehs
|
||||
N offset;
|
||||
|
||||
public:
|
||||
~Serializer() override
|
||||
~Serializer()
|
||||
{
|
||||
delete[] data;
|
||||
}
|
||||
@@ -38,32 +38,27 @@ namespace ehs
|
||||
Serializer()
|
||||
: endianness(Endianness::BE), data(nullptr), size(0), offset(0)
|
||||
{
|
||||
AddType("Serializer");
|
||||
}
|
||||
|
||||
Serializer(const Endianness endianness)
|
||||
: endianness(endianness), data(nullptr), size(0), offset(0)
|
||||
{
|
||||
AddType("Serializer");
|
||||
}
|
||||
|
||||
Serializer(const Endianness endianness, const N size)
|
||||
: endianness(endianness), data(new Byte[size]), size(size), offset(0)
|
||||
{
|
||||
AddType("Serializer");
|
||||
}
|
||||
|
||||
Serializer(const Endianness endianness, const Byte* const data, const N size, const N offset = 0)
|
||||
: endianness(endianness), data(new Byte[size]), size(size), offset(offset)
|
||||
{
|
||||
AddType("Serializer");
|
||||
|
||||
for (N i = 0; i < size; ++i)
|
||||
this->data[i] = data[i];
|
||||
}
|
||||
|
||||
Serializer(Serializer&& serializer) noexcept
|
||||
: BaseObj((BaseObj&&)serializer), endianness(serializer.endianness), data(serializer.data),
|
||||
: endianness(serializer.endianness), data(serializer.data),
|
||||
size(serializer.size), offset(serializer.offset)
|
||||
{
|
||||
serializer.data = nullptr;
|
||||
@@ -72,7 +67,7 @@ namespace ehs
|
||||
}
|
||||
|
||||
Serializer(const Serializer& serializer)
|
||||
: BaseObj(serializer), endianness(serializer.endianness), data(new Byte[serializer.size]),
|
||||
: endianness(serializer.endianness), data(new Byte[serializer.size]),
|
||||
size(serializer.size), offset(serializer.offset)
|
||||
{
|
||||
for (N i = 0; i < serializer.size; ++i)
|
||||
@@ -84,8 +79,6 @@ namespace ehs
|
||||
if (this == &serializer)
|
||||
return *this;
|
||||
|
||||
BaseObj::operator=((Serializer&&)serializer);
|
||||
|
||||
endianness = serializer.endianness;
|
||||
delete[] data;
|
||||
data = serializer.data;
|
||||
@@ -104,8 +97,6 @@ namespace ehs
|
||||
if (this == &serializer)
|
||||
return *this;
|
||||
|
||||
BaseObj::operator=(serializer);
|
||||
|
||||
endianness = serializer.endianness;
|
||||
|
||||
delete[] data;
|
||||
@@ -1228,7 +1219,7 @@ namespace ehs
|
||||
void Resize(const N newSize)
|
||||
{
|
||||
Byte* result = new Byte[newSize];
|
||||
Util::Copy(result, data, size);
|
||||
Util::Copy(result, data, newSize >= size ? size : newSize);
|
||||
delete[] data;
|
||||
data = result;
|
||||
size = newSize;
|
||||
|
Reference in New Issue
Block a user