f956fd20cc
- aggiunta scrittura binaria - tolte GetKey, Load e Save da interfaccia IGeoObj.
50 lines
1.5 KiB
C++
50 lines
1.5 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2014-2014
|
|
//----------------------------------------------------------------------------
|
|
// File : BinaryRW.h Data : 12.04.14 Versione : 1.5d3
|
|
// Contenuto : Funzioni per lettura e scrittura di file binari.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 12.04.14 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include "/EgtDev/Include/EGkColor.h"
|
|
#include <ostream>
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline void
|
|
WriteUchar( std::ostream& osOut, unsigned char cVal)
|
|
{
|
|
osOut.write( (char*) &cVal, sizeof( cVal)) ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline void
|
|
WriteInt( std::ostream& osOut, int nVal)
|
|
{
|
|
osOut.write( (char*) &nVal, sizeof( nVal)) ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline void
|
|
WriteString( std::ostream& osOut, const std::string sVal)
|
|
{
|
|
WriteInt( osOut, int( sVal.size())) ;
|
|
osOut.write( sVal.c_str(), sVal.size()) ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
inline void
|
|
WriteCol( std::ostream& osOut, Color cCol)
|
|
{
|
|
WriteUchar( osOut, cCol.GetIntRed()) ;
|
|
WriteUchar( osOut, cCol.GetIntGreen()) ;
|
|
WriteUchar( osOut, cCol.GetIntBlue()) ;
|
|
WriteUchar( osOut, cCol.GetIntAlpha()) ;
|
|
}
|