1 #ifndef TAG_PARSER_MP4ATOM_H 2 #define TAG_PARSER_MP4ATOM_H 6 #include "../genericfileelement.h" 8 #include <c++utilities/conversion/stringconversion.h> 9 #include <c++utilities/conversion/types.h> 44 std::string idToString()
const;
45 bool isParent()
const;
46 bool isPadding()
const;
47 uint64 firstChildOffset()
const;
49 static void seekBackAndWriteAtomSize(std::ostream &stream,
const std::ostream::pos_type &startOffset,
Diagnostics &diag);
50 static void seekBackAndWriteAtomSize64(std::ostream &stream,
const std::ostream::pos_type &startOffset);
51 static constexpr
void addHeaderSize(uint64 &dataSize);
52 static void makeHeader(uint64 size, uint32
id, IoUtilities::BinaryWriter &writer);
61 std::string parsingContext()
const;
69 auto idString = ConversionUtilities::interpretIntegerAsString<IdentifierType>(
id());
70 for (
char &c : idString) {
88 #endif // TAG_PARSER_MP4ATOM_H Defines traits for the specified ImplementationType.
static constexpr void addHeaderSize(uint64 &dataSize)
Adds the header size to the specified data size.
DataSizeType dataSize() const
Returns the data size of the element in byte.
Implementation of GenericContainer<MediaFileInfo, Mp4Tag, Mp4Track, Mp4Atom>.
The Mp4Atom class helps to parse MP4 files.
static constexpr byte minimumElementSize()
Returns the minimal atom size which is 8 byte.
The GenericFileElement class helps to parse binary files which consist of an arboreal element strucut...
typename FileElementTraits< ImplementationType >::ContainerType ContainerType
Specifies the type of the corresponding container.
const IdentifierType & id() const
Returns the element ID.
Contains all classes and functions of the TagInfo library.
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.
std::string idToString() const
Converts the specified atom ID to a printable string.
The Diagnostics class is a container for DiagMessage.