summaryrefslogtreecommitdiffstats
path: root/external/optick/optick_serialization.h
diff options
context:
space:
mode:
Diffstat (limited to 'external/optick/optick_serialization.h')
-rw-r--r--external/optick/optick_serialization.h120
1 files changed, 0 insertions, 120 deletions
diff --git a/external/optick/optick_serialization.h b/external/optick/optick_serialization.h
deleted file mode 100644
index 91de32d..0000000
--- a/external/optick/optick_serialization.h
+++ /dev/null
@@ -1,120 +0,0 @@
-#pragma once
-#include "optick_common.h"
-
-#if USE_OPTICK
-#include "optick_memory.h"
-
-#if defined(OPTICK_MSVC)
-#pragma warning( push )
-
-//C4250. inherits 'std::basic_ostream'
-#pragma warning( disable : 4250 )
-
-//C4127. Conditional expression is constant
-#pragma warning( disable : 4127 )
-#endif
-
-namespace Optick
-{
- class OutputDataStream : private ostringstream
- {
- public:
- static OutputDataStream Empty;
- // Move constructor rocks!
- // Beware of one copy here(do not use it in performance critical parts)
- string GetData();
-
- // It is important to make private inheritance in order to avoid collision with default operator implementation
- friend OutputDataStream &operator << ( OutputDataStream &stream, const char* val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, int val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, uint64 val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, uint32 val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, int64 val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, char val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, byte val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, int8 val);
- friend OutputDataStream &operator << ( OutputDataStream &stream, float val);
- friend OutputDataStream &operator << ( OutputDataStream &stream, const string& val );
- friend OutputDataStream &operator << ( OutputDataStream &stream, const wstring& val );
-
- OutputDataStream& Write(const char* buffer, size_t size);
- };
-
- template<class T>
- OutputDataStream& operator<<(OutputDataStream &stream, const vector<T>& val)
- {
- stream << (uint32)val.size();
-
- for(auto it = val.begin(); it != val.end(); ++it)
- {
- const T& element = *it;
- stream << element;
- }
-
- return stream;
- }
-
- template<class T, uint32 N>
- OutputDataStream& operator<<(OutputDataStream &stream, const MemoryPool<T, N>& val)
- {
- stream << (uint32)val.Size();
-
- val.ForEach([&](const T& data)
- {
- stream << data;
- });
-
- return stream;
- }
-
- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- class InputDataStream : private stringstream {
- public:
- bool CanRead() { return !eof(); }
-
- InputDataStream();
-
- void Append(const char *buffer, size_t length);
- bool Skip(size_t length);
- size_t Length();
-
- template<class T>
- bool Peek(T& data)
- {
- if (Length() < sizeof(T))
- return false;
-
- pos_type currentPos = tellg();
- read((char*)&data, sizeof(T));
- seekg(currentPos);
- return true;
- }
-
- template<class T>
- bool Read(T& data)
- {
- if (Length() < sizeof(T))
- return false;
-
- read((char*)&data, sizeof(T));
- return true;
- }
-
- friend InputDataStream &operator >> (InputDataStream &stream, byte &val );
- friend InputDataStream &operator >> (InputDataStream &stream, int16 &val);
- friend InputDataStream &operator >> (InputDataStream &stream, uint16 &val);
- friend InputDataStream &operator >> (InputDataStream &stream, int32 &val );
- friend InputDataStream &operator >> (InputDataStream &stream, uint32 &val );
- friend InputDataStream &operator >> (InputDataStream &stream, int64 &val );
- friend InputDataStream &operator >> (InputDataStream &stream, uint64 &val );
- friend InputDataStream &operator >> (InputDataStream &stream, string &val);
- };
-
-
-}
-
-#if defined(OPTICK_MSVC)
-#pragma warning( pop )
-#endif
-
-#endif //USE_OPTICK \ No newline at end of file