We're updating the issue view to help you get more done. 

CCSDS Comments are Written to disallowed portions of the file

Description

At least three classes are involved in this:
EphemWriter Base Class and the derived EphemWriterCCSDS,
CCSDSOEMSegment, and CCSDSOEMWriter.

Comments written to the CCSDS file, explaining the cause of the discontininuities,
are currently written out at the end EphemerisWriter::StartNewSegment(), with these lines

writeCommentAfterData = writeAfterData;
currComments = comments;
WriteDataComments(comments, false, ignoreBlankComments);

The rest of the meta data is written out from from. CCSDSOEMSegment::GetMetaDataForWriting()

We need to refactor so that comments in EphemerisWriter::StartNewSegment()
are written within the metadata block, (required by the CCSDS Spec) for the segment after the disconntuity.

I did some exploration... here is a possible solution

1) comment out the lines in EphemerisWriter::StartNewSegment()
writeCommentAfterData = writeAfterData;
currComments = comments;
WriteDataComments(comments, false, ignoreBlankComments);
2) In place of that code, add the comments to the meta data on the current segment using this, then they are automatically written out when calling CCSDSOEMSegment::GetMetaDataForWriting()
if (comments != "")
{
ccsdsOemWriter->AddMetaComment(comments);
}

Environment

None

Assignee

Steven Hughes

Reporter

Steven Hughes

Labels

None

Development Build

None

Components

Fix versions

Priority

P1
Configure