18 AbstractChapter::AbstractChapter()
41 if (!
names().empty()) {
42 ss <<
", name: \"" <<
names().front() <<
"\"";
45 ss <<
", start: " <<
startTime().toString(TimeSpanOutputFormat::WithMeasures);
uint64 id() const
Returns the chapter ID if known; otherwise returns zero.
void parse(Diagnostics &diag)
Parses the chapter.
ChronoUtilities::TimeSpan m_startTime
std::vector< LocaleAwareString > m_names
virtual void internalParse(Diagnostics &diag)=0
Internally called to parse the chapter.
const std::vector< LocaleAwareString > & names() const
Returns the chapter name.
ChronoUtilities::TimeSpan startTime() const
Returns the start time if known; otherwise returns a negative time span.
void parseNested(Diagnostics &diag)
Parses the chapter and nested chapters recursively.
ChronoUtilities::TimeSpan m_endTime
virtual std::size_t nestedChapterCount() const
Returns the number of nested chapters.
virtual void clear()
Resets the object to its initial state.
std::string label() const
Returns a label for the chapter.
std::vector< uint64 > m_tracks
virtual ~AbstractChapter()
Destroys the chapter.
virtual AbstractChapter * nestedChapter(std::size_t index)
Returns the nested chapter with the specified index.