diff --git a/include/FLAC++/metadata.h b/include/FLAC++/metadata.h index 90bf1980..bbf4e891 100644 --- a/include/FLAC++/metadata.h +++ b/include/FLAC++/metadata.h @@ -359,6 +359,10 @@ namespace FLAC { */ inline Padding(::FLAC__StreamMetadata *object, bool copy): Prototype(object, copy) { } + /** Constructs an object with the given length. + */ + Padding(unsigned length); + ~Padding(); //@{ @@ -387,6 +391,8 @@ namespace FLAC { inline bool operator!=(const ::FLAC__StreamMetadata *object) const { return Prototype::operator!=(object); } //@} + /** Sets the length in bytes of the padding block. + */ void set_length(unsigned length); }; diff --git a/src/libFLAC++/metadata.cpp b/src/libFLAC++/metadata.cpp index ee671a02..a378624c 100644 --- a/src/libFLAC++/metadata.cpp +++ b/src/libFLAC++/metadata.cpp @@ -361,6 +361,12 @@ namespace FLAC { Prototype(FLAC__metadata_object_new(FLAC__METADATA_TYPE_PADDING), /*copy=*/false) { } + Padding::Padding(unsigned length): + Prototype(FLAC__metadata_object_new(FLAC__METADATA_TYPE_PADDING), /*copy=*/false) + { + set_length(length); + } + Padding::~Padding() { }