fixed reset() methods

This commit is contained in:
Martchus 2015-10-06 22:39:18 +02:00
parent e60b17ba88
commit ed10015b1a
6 changed files with 36 additions and 0 deletions

View File

@ -52,6 +52,26 @@ MatroskaContainer::MatroskaContainer(MediaFileInfo &fileInfo, uint64 startOffset
MatroskaContainer::~MatroskaContainer()
{}
void MatroskaContainer::reset()
{
GenericContainer<MediaFileInfo, MatroskaTag, MatroskaTrack, EbmlElement>::reset();
m_maxIdLength = 4;
m_maxSizeLength = 8;
m_version = 1;
m_readVersion = 1;
m_doctype = "matroska";
m_doctypeVersion = 1;
m_doctypeReadVersion = 1;
m_tracksElements.clear();
m_segmentInfoElements.clear();
m_tagsElements.clear();
m_chaptersElements.clear();
m_attachmentsElements.clear();
m_seekInfos.clear();
m_editionEntries.clear();
m_attachments.clear();
}
/*!
* \brief Validates the file index (cue entries).
* \remarks Checks only for cluster positions and missing, unknown or surplus elements.

View File

@ -42,6 +42,8 @@ public:
MatroskaAttachment *attachment(std::size_t index);
std::size_t attachmentCount() const;
void reset();
protected:
void internalParseHeader();
void internalParseTags();

View File

@ -38,6 +38,12 @@ Mp4Container::Mp4Container(MediaFileInfo &fileInfo, uint64 startOffset) :
Mp4Container::~Mp4Container()
{}
void Mp4Container::reset()
{
GenericContainer<MediaFileInfo, Mp4Tag, Mp4Track, Mp4Atom>::reset();
m_fragmented = false;
}
void Mp4Container::internalParseHeader()
{
//const string context("parsing header of MP4 container"); will be used when generating notifications

View File

@ -24,6 +24,7 @@ public:
bool supportsTrackModifications() const;
bool isFragmented() const;
void reset();
protected:
void internalParseHeader();

View File

@ -31,6 +31,12 @@ OggContainer::OggContainer(MediaFileInfo &fileInfo, uint64 startOffset) :
OggContainer::~OggContainer()
{}
void OggContainer::reset()
{
m_commentTable.clear();
m_iterator.reset();
}
void OggContainer::internalParseHeader()
{
static const string context("parsing OGG bitstream header");

View File

@ -45,6 +45,7 @@ public:
bool isChecksumValidationEnabled() const;
void setChecksumValidationEnabled(bool enabled);
void reset();
protected:
void internalParseHeader();