X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Ffnetorderstream.h;h=5e1336a21accf2d29ff4f80431543919c9f6ce64;hp=9528004142059f734ec814e032a04e4be8062dbe;hb=c0f892798de8f89715266150f7d8e413f2cf29fe;hpb=c00c639073653fac7463a88f2b000f263236550d diff --git a/include/fnetorderstream.h b/include/fnetorderstream.h index 9528004..5e1336a 100644 --- a/include/fnetorderstream.h +++ b/include/fnetorderstream.h @@ -7,9 +7,9 @@ ** Date Started: Sep 2000 ** ** This is part of the CTSim program -** Copyright (C) 1983-2000 Kevin Rosenberg +** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: fnetorderstream.h,v 1.7 2001/01/02 16:02:12 kevin Exp $ +** $Id: fnetorderstream.h,v 1.10 2002/05/28 18:43:16 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -88,15 +88,44 @@ SwapBytes8 (void* buffer) p[4] = temp; } +inline void +SwapBytes2IfLittleEndian (void* buffer) +{ +#ifndef WORDS_BIGENDIAN + SwapBytes2 (buffer); +#endif +} + +inline void +SwapBytes4IfLittleEndian (void* buffer) +{ +#ifndef WORDS_BIGENDIAN + SwapBytes4 (buffer); +#endif +} + +inline void +SwapBytes8IfLittleEndian (void* buffer) +{ +#ifndef WORDS_BIGENDIAN + SwapBytes8 (buffer); +#endif +} void ConvertNetworkOrder (void* buffer, size_t bytes); void ConvertReverseNetworkOrder (void* buffer, size_t bytes); +#define GPP3 1 using std::fstream; class fnetorderstream : public fstream { public: +#if GPP3 + fnetorderstream (const char* filename, std::ios::openmode mode) + : fstream (filename, mode) {} +#else fnetorderstream (const char* filename, int mode) : fstream (filename, mode) {} +#endif ~fnetorderstream (void) {} @@ -115,9 +144,13 @@ class fnetorderstream : public fstream { class frnetorderstream : public fnetorderstream { public: +#if GPP3 + frnetorderstream (const char* filename, std::ios::openmode mode) + : fnetorderstream (filename, mode) {} +#else frnetorderstream (const char* filename, int mode) : fnetorderstream (filename, mode) {} - +#endif virtual void writeInt16 (kuint16 n); virtual void writeInt32 (kuint32 n); virtual void writeFloat32 (kfloat32 n);