add an accessor method for the underlying ::FLAC__StreamMetadata object
diff --git a/include/FLAC++/metadata.h b/include/FLAC++/metadata.h
index 500b5b1..08b15b0 100644
--- a/include/FLAC++/metadata.h
+++ b/include/FLAC++/metadata.h
@@ -197,6 +197,15 @@
* \code is_valid() \endcode
*/
void set_is_last(bool);
+
+ /** Returns a pointer to the underlying ::FLAC__StreamMetadata
+ * object. This can be useful for plugging any holes between
+ * the C++ and C interfaces.
+ *
+ * \assert
+ * \code is_valid() \endcode
+ */
+ inline operator const ::FLAC__StreamMetadata *() const;
private:
/** Private and undefined so you can't use it. */
Prototype();
@@ -227,6 +236,9 @@
inline bool Prototype::is_valid() const
{ return 0 != object_; }
+ inline Prototype::operator const ::FLAC__StreamMetadata *() const
+ { return object_; }
+
/** Create a deep copy of an object and return it. */
FLACPP_API Prototype *clone(const Prototype *);