ui64_t m_EssenceStart;
WriterInfo m_Info;
ASDCP::FrameBuffer m_CtFrameBuf;
- fpos_t m_LastPosition;
+ Kumu::fpos_t m_LastPosition;
h__Reader();
virtual ~h__Reader();
ASDCP_NO_COPY_CONSTRUCT(OPAtomIndexFooter);
public:
- fpos_t m_ECOffset;
+ Kumu::fpos_t m_ECOffset;
IPrimerLookup* m_Lookup;
OPAtomIndexFooter();
virtual Result_t Lookup(ui32_t frame_num, IndexTableSegment::IndexEntry&);
virtual void PushIndexEntry(const IndexTableSegment::IndexEntry&);
virtual void SetIndexParamsCBR(IPrimerLookup* lookup, ui32_t size, const Rational& Rate);
- virtual void SetIndexParamsVBR(IPrimerLookup* lookup, const Rational& Rate, fpos_t offset);
+ virtual void SetIndexParamsVBR(IPrimerLookup* lookup, const Rational& Rate, Kumu::fpos_t offset);
};
} // namespace MXF
Result_t result = WriteTag(Entry);
- // write a temp length
- byte_t* l_p = CurrentData();
+ if ( ASDCP_SUCCESS(result) )
+ {
+ // write a temp length
+ byte_t* l_p = CurrentData();
- if ( ! MemIOWriter::WriteUi16BE(0) ) return RESULT_KLV_CODING;
+ if ( ! MemIOWriter::WriteUi16BE(0) ) return RESULT_KLV_CODING;
- ui32_t before = Length();
- if ( ! Object->Archive(this) ) return RESULT_KLV_CODING;
- Kumu::i2p<ui16_t>(KM_i16_BE( Length() - before), l_p);
- return RESULT_OK;
+ ui32_t before = Length();
+ if ( ! Object->Archive(this) ) return RESULT_KLV_CODING;
+ Kumu::i2p<ui16_t>(KM_i16_BE( Length() - before), l_p);
+ }
+
+ return result;
}
//
if ( ASDCP_SUCCESS(result) )
{
// Index setup
- fpos_t ECoffset = m_File.Tell();
+ Kumu::fpos_t ECoffset = m_File.Tell();
if ( BytesPerEditUnit == 0 )
m_FooterPart.SetIndexParamsVBR(&m_HeaderPart.m_Primer, EditRate, ECoffset);
m_FPTCSequence->Duration = m_FPTimecode->Duration = m_FPClSequence->Duration = m_FPClip->Duration =
m_EssenceDescriptor->ContainerDuration = m_FramesWritten;
- fpos_t here = m_File.Tell();
+ Kumu::fpos_t here = m_File.Tell();
m_HeaderPart.m_RIP.PairArray.push_back(RIP::Pair(0, here)); // Third RIP Entry
m_HeaderPart.FooterPartition = here;