Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

DC_FileTelemetryStream.cpp

00001 // 00002 // Copyright 2004 P&P Software GmbH - All Rights Reserved 00003 // 00004 // DC_FileTelemetryStream.cpp 00005 // 00006 // Version 1.0 00007 // Date 04.03.03 00008 // Author A. Pasetti (P&P Software) 00009 00010 #include "../GeneralInclude/CompilerSwitches.h" 00011 #include "../GeneralInclude/DebugSupport.h" 00012 #include "../GeneralInclude/ClassId.h" 00013 #include "../GeneralInclude/Constants.h" 00014 #include "../Base/CC_RootObject.h" 00015 #include "TelemetryPacket.h" 00016 #include "DC_FileTelemetryStream.h" 00017 #include <stdio.h> 00018 #include <time.h> 00019 00020 DC_FileTelemetryStream::DC_FileTelemetryStream(void) { 00021 setClassId(ID_FILETELEMETRYSTREAM); 00022 out = pNULL; 00023 } 00024 00025 void DC_FileTelemetryStream::flush(void) { 00026 if ( out!=pNULL ) { 00027 fprintf(out,"---------------------------------------------------------------------\n"); 00028 fflush(out); 00029 } 00030 else 00031 printf("---------------------------------------------------------------------\n"); 00032 } 00033 00034 void DC_FileTelemetryStream::setOutputStream(FILE* outputStream) { 00035 out = outputStream; 00036 #ifdef MS_HOST 00037 time_t ltime; 00038 time( &ltime ); 00039 if ( out!=pNULL ) 00040 fprintf(out,"File-Oriented Output Stream -- Data Written on %s \n",ctime( &ltime )); 00041 else 00042 printf("File-Oriented Output Stream -- Data Written on %s \n",ctime( &ltime )); 00043 #endif 00044 } 00045 00046 FILE* DC_FileTelemetryStream::getOutputStream(void) { 00047 return out; 00048 } 00049 00050 void DC_FileTelemetryStream::write(TelemetryPacket* tmItem) { 00051 assert( tmItem!=pNULL ); 00052 if (out!=pNULL) { 00053 fprintf(out,"Telemetry Item Type (hex): %8x \n",tmItem->getType()); 00054 fprintf(out,"Telemetry Item Subtype (hex): %8x \n",tmItem->getSubType()); 00055 fprintf(out,"Telemetry Item Destination (hex): %8x \n",tmItem->getDestination()); 00056 fprintf(out,"Telemetry Item Time Tag (hex): %8x \n",tmItem->getTimeTag()); 00057 for (unsigned int i=0; i<tmItem->getNumberOfBytes(); i++) 00058 fprintf(out,"Byte %8x (hex): %8x \n",i,tmItem->getUnsignedByte(i)); 00059 } 00060 else { 00061 printf("Telemetry Item Type (hex): %8x \n",tmItem->getType()); 00062 printf("Telemetry Item Subtype (hex): %8x \n",tmItem->getSubType()); 00063 printf("Telemetry Item Destination (hex): %8x \n",tmItem->getDestination()); 00064 printf("Telemetry Item Time Tag (hex): %8x \n",tmItem->getTimeTag()); 00065 for (unsigned int i=0; i<tmItem->getNumberOfBytes(); i++) 00066 printf("Byte %8x (hex): %8x \n",i,tmItem->getUnsignedByte(i)); 00067 } 00068 } 00069 00070
Copyright 2003 P&P Software GmbH - All Rights Reserved