WSABinaryFileReader.cpp

Go to the documentation of this file.
00001 
00002 
00003 //-----------------------------------------------------------------------------
00004 // CVS: $Revision: 2866 $, $Date: 2006-09-15 12:04:57 +0100 (Fri, 15 Sep 2006) $, $Author: rsc $
00005 //-----------------------------------------------------------------------------
00006 #include "Datum.h"
00007 #include "FileHeader.h"
00008 #include "FileObjectReader.h"
00009 
00010 #include "WSABinaryFileReader.h"
00011 
00012 class Object;
00013 //-----------------------------------------------------------------------------
00014 WSABinaryFileReader::WSABinaryFileReader()
00015   : FileObjectReader()
00016 {
00017 }
00018 //-----------------------------------------------------------------------------
00019 Object* WSABinaryFileReader::read(FILE* aFilePtr)
00020 {
00021   Object* theObjectPtr = 0;
00022   static const unsigned int cBufferSize = 24;
00023   static char bufferAry[cBufferSize];
00024   double orthoSD = 0;
00025   double decSD = 0;
00026 
00027   if (cBufferSize == fread(bufferAry,
00028                            sizeof(char),
00029                            cBufferSize,
00030                            aFilePtr))
00031   {
00032     unsigned long long id = *((unsigned long long *) (&bufferAry[0]));
00033     double ra =             *((double *)             (&bufferAry[8]));
00034     double dec =            *((double *)             (&bufferAry[16]));
00035 
00036     theObjectPtr = new Datum(id, ra, orthoSD, dec, decSD);
00037   }
00038 
00039   return theObjectPtr;
00040 }
00041 //-----------------------------------------------------------------------------
Generated on Mon Oct 4 10:39:55 2010 for Matching.kdevelop by  doxygen 1.6.3