foobar2000 SDK  2015-08-03
Public Types | Public Member Functions | Private Member Functions
decode_postprocessor_instanceabstract

#include <decode_postprocessor.h>

+ Inheritance diagram for decode_postprocessor_instance:

Public Types

enum  { flag_eof = 1 << 0, flag_altered = 1 << 1 }
 
- Public Types inherited from service_base
typedef service_base t_interface
 

Public Member Functions

virtual void flush ()=0
 
virtual double get_buffer_ahead ()=0
 
virtual bool get_dynamic_info (file_info &p_out)=0
 
virtual bool run (dsp_chunk_list &p_chunk_list, t_uint32 p_flags, abort_callback &p_abort)=0
 
- Public Member Functions inherited from service_base
template<typename outPtr_t >
bool cast (outPtr_t &outPtr)
 
virtual int service_add_ref ()=0 throw ()
 
virtual bool service_query (service_ptr_t< service_base > &p_out, const GUID &p_guid)
 
template<class T >
bool service_query_t (service_ptr_t< T > &p_out)
 
virtual int service_release ()=0 throw ()
 

Private Member Functions

 FB2K_MAKE_SERVICE_INTERFACE (decode_postprocessor_instance, service_base)
 

Additional Inherited Members

- Protected Member Functions inherited from service_base
 service_base ()
 
 ~service_base ()
 

Detailed Description

Since
1.1 This service is essentially a special workaround to easily decode DTS/HDCD content stored in files pretending to contain plain PCM data.
Callers: Instead of calling this directly, you probably want to use input_postprocessed template.
Implementers: This service is called only by specific decoders, not by all of them! Implementing your own to provide additional functionality is not recommended!

Definition at line 5 of file decode_postprocessor.h.

Member Enumeration Documentation

anonymous enum
Enumerator
flag_eof 

End of stream. Flush any buffered data during this call.

flag_altered 

Stream has already been altered by another instance.

Definition at line 8 of file decode_postprocessor.h.

8  {
10  flag_eof = 1 << 0,
12  flag_altered = 1 << 1,
13  };
Stream has already been altered by another instance.
End of stream. Flush any buffered data during this call.

Member Function Documentation

decode_postprocessor_instance::FB2K_MAKE_SERVICE_INTERFACE ( decode_postprocessor_instance  ,
service_base   
)
private
virtual void decode_postprocessor_instance::flush ( )
pure virtual
virtual double decode_postprocessor_instance::get_buffer_ahead ( )
pure virtual
virtual bool decode_postprocessor_instance::get_dynamic_info ( file_info p_out)
pure virtual
virtual bool decode_postprocessor_instance::run ( dsp_chunk_list p_chunk_list,
t_uint32  p_flags,
abort_callback p_abort 
)
pure virtual
Returns
True if the chunk list has been altered by the call, false if not - to tell possible other running instances whether the stream has already been altered or not.

The documentation for this class was generated from the following file: