add resolved_as_cstring()
authorJosh Coalson <jcoalson@users.sourceforce.net>
Wed, 24 Sep 2003 22:08:00 +0000 (22:08 +0000)
committerJosh Coalson <jcoalson@users.sourceforce.net>
Wed, 24 Sep 2003 22:08:00 +0000 (22:08 +0000)
include/FLAC++/decoder.h
include/FLAC/stream_decoder.h
src/libFLAC/stream_decoder.c

index d0bbfe9..c98b6a6 100644 (file)
@@ -95,6 +95,7 @@ namespace FLAC {
                                inline State(::FLAC__StreamDecoderState state): state_(state) { }
                                inline operator ::FLAC__StreamDecoderState() const { return state_; }
                                inline const char *as_cstring() const { return ::FLAC__StreamDecoderStateString[state_]; }
+                               inline const char *resolved_as_cstring(const Stream &decoder) const { return ::FLAC__stream_decoder_get_resolved_state_string(decoder.decoder_); }
                        protected:
                                ::FLAC__StreamDecoderState state_;
                        };
index d2fb6bb..0075cab 100644 (file)
@@ -606,6 +606,16 @@ FLAC_API FLAC__bool FLAC__stream_decoder_set_metadata_ignore_all(FLAC__StreamDec
  */
 FLAC_API FLAC__StreamDecoderState FLAC__stream_decoder_get_state(const FLAC__StreamDecoder *decoder);
 
+/** Get the current decoder state as a C string.
+ *
+ * \param  decoder  A decoder instance to query.
+ * \assert
+ *    \code decoder != NULL \endcode
+ * \retval const char *
+ *    The decoder state as a C string.  Do not modify the contents.
+ */
+FLAC_API const char *FLAC__stream_decoder_get_resolved_state_string(const FLAC__StreamDecoder *decoder);
+
 /** Get the current number of channels in the stream being decoded.
  *  Will only be valid after decoding has started and will contain the
  *  value from the most recently decoded frame header.
index d0c1999..ad1adae 100644 (file)
@@ -516,6 +516,11 @@ FLAC_API FLAC__StreamDecoderState FLAC__stream_decoder_get_state(const FLAC__Str
        return decoder->protected_->state;
 }
 
+FLAC_API const char *FLAC__stream_decoder_get_resolved_state_string(const FLAC__StreamDecoder *decoder)
+{
+       return FLAC__StreamDecoderStateString[decoder->protected_->state];
+}
+
 FLAC_API unsigned FLAC__stream_decoder_get_channels(const FLAC__StreamDecoder *decoder)
 {
        FLAC__ASSERT(0 != decoder);