unpacker Class Reference

#include <unpack.h>

Inheritance diagram for unpacker:

service_base

List of all members.

Public Types

typedef unpacker t_interface_entrypoint
typedef unpacker t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual void open (service_ptr_t< file > &p_out, const service_ptr_t< file > &p_source, abort_callback &p_abort)=0

Static Public Member Functions

static void g_open (service_ptr_t< file > &p_out, const service_ptr_t< file > &p_source, abort_callback &p_abort)

Static Public Attributes

static const GUID class_guid


Detailed Description

Service providing "unpacker" functionality - processes "packed" file (such as a zip file containing a single media file inside) to allow its contents to be accessed transparently.
To access existing unpacker implementations, use unpacker::g_open helper function.
To register your own implementation, use unpacker_factory_t template.

Member Typedef Documentation

Reimplemented from service_base.


Member Function Documentation

virtual void unpacker::open ( service_ptr_t< file > &  p_out,
const service_ptr_t< file > &  p_source,
abort_callback &  p_abort 
) [pure virtual]

Attempts to open specified file for unpacking, creates interface to virtual file with uncompressed data on success. When examined file doesn't appear to be one of formats supported by this unpacker implementation, throws exception_io_data.

Parameters:
p_out Receives interface to virtual file with uncompressed data on success.
p_source Source file to process.
p_abort abort_callback object signaling user aborting the operation.

static void unpacker::g_open ( service_ptr_t< file > &  p_out,
const service_ptr_t< file > &  p_source,
abort_callback &  p_abort 
) [static]

Static helper querying existing unpacker implementations until one that successfully opens specified file is found. Attempts to open specified file for unpacking, creates interface to virtual file with uncompressed data on success. When examined file doesn't appear to be one of formats supported by registered unpacker implementations, throws exception_io_data.

Parameters:
p_out Receives interface to virtual file with uncompressed data on success.
p_source Source file to process.
p_abort abort_callback object signaling user aborting the operation.


Member Data Documentation

const GUID unpacker::class_guid [static]

Initial value:

 
{ 0x9098af12, 0x61a3, 0x4caa, { 0x8a, 0xa9, 0xbb, 0x95, 0xc2, 0xef, 0x83, 0x46 } }


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

Generated on Fri Apr 18 13:56:58 2008 for foobar2000 SDK by  doxygen 1.5.5