![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: serializ.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef serializ_H_ 00009 #define serializ_H_ 00010 00011 // 00012 // \file serializ.h Contains the declaration of an abstract serializability interface. 00013 // 00014 00015 #include "tdbutil/tdbUtilDefines.h" 00016 #include <stdio.h> 00017 #include <vlutil/vlMachineTypes.h> 00018 #include <vlutil/vlString.h> 00019 #include <matrix/utmCoord.h> 00020 #include <vl/utmView.h> 00021 00022 // Typedef to maintain backwards compatibility 00023 class DtSerializable; 00024 // \deprecated VRF 3.9 Will be removed in a future version. 00025 typedef DtSerializable Serializable; 00026 00027 // 00028 // File I/O functions. 00029 // 00030 class DT_DLL_tdbutil DtSerializable 00031 { 00032 public: 00033 virtual bool readFrom(FILE* fp) = 0; 00034 virtual bool writeTo(FILE* fp) = 0; 00035 00036 static DtU8 ReadDtU8(FILE* fp); 00037 static DtU16 ReadDtU16(FILE* fp); 00038 static DtU32 ReadDtU32(FILE* fp); 00039 static DtInt16 ReadDtInt16(FILE* fp); 00040 static DtInt32 ReadDtInt32(FILE* fp); 00041 static DtFloat64 ReadDtFloat64(FILE* fp); 00042 static DtDegMinSec ReadDtDegMinSec(FILE* fp); 00043 static DtString ReadDtString(FILE* fp); 00044 static DtMapDatum ReadDtMapDatum(FILE* fp); 00045 00046 static bool WriteDtU8(FILE* fp, DtU8 b); 00047 static bool WriteDtU16(FILE* fp, DtU16 l); 00048 static bool WriteDtU32(FILE* fp, DtU32 l); 00049 static bool WriteDtInt16(FILE* fp, DtInt16 val); 00050 static bool WriteDtInt32(FILE* fp, DtInt32 val); 00051 static bool WriteDtFloat64(FILE* fp, DtFloat64 val); 00052 static bool WriteDtDegMinSec(FILE* fp, const DtDegMinSec& val); 00053 static bool WriteDtString(FILE* fp, const DtString& val); 00054 static bool WriteDtMapDatum(FILE* fp, const DtMapDatum& md); 00055 }; 00056 00057 00058 #endif