00001
00002
00003
00004
00005
00006
00007
00008
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( <ime );
00039
if ( out!=pNULL )
00040 fprintf(out,
"File-Oriented Output Stream -- Data Written on %s \n",ctime( <ime ));
00041
else
00042 printf(
"File-Oriented Output Stream -- Data Written on %s \n",ctime( <ime ));
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