foobar2000 SDK  2015-08-03
Public Member Functions | Static Public Member Functions | Private Member Functions
chapterizerabstract

#include <chapterizer.h>

+ Inheritance diagram for chapterizer:

Public Member Functions

virtual void get_chapters (const char *p_path, chapter_list &p_list, abort_callback &p_abort)=0
 
virtual bool is_our_path (const char *p_path)=0
 
virtual void set_chapters (const char *p_path, chapter_list const &p_list, abort_callback &p_abort)=0
 
virtual bool supports_pregaps ()=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 ()
 

Static Public Member Functions

static bool g_find (service_ptr_t< chapterizer > &p_out, const char *p_path)
 
static bool g_is_pregap_capable (const char *p_path)
 

Private Member Functions

 FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (chapterizer)
 

Additional Inherited Members

- Public Types inherited from service_base
typedef service_base t_interface
 
- Protected Member Functions inherited from service_base
 service_base ()
 
 ~service_base ()
 

Detailed Description

This service implements chapter list editing operations for various file formats, e.g. for MP4 chapters or CD images with embedded cuesheets. Used by converter "encode single file with chapters" feature.

Definition at line 59 of file chapterizer.h.

Member Function Documentation

chapterizer::FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT ( chapterizer  )
private
bool chapterizer::g_find ( service_ptr_t< chapterizer > &  p_out,
const char *  p_path 
)
static

Static helper, tries to find chapterizer interface that supports specified file.

Definition at line 11 of file chapterizer.cpp.

12 {
15  while(e.next(ptr)) {
16  if (ptr->is_our_path(p_path)) {
17  p_out = ptr;
18  return true;
19  }
20  }
21  return false;
22 }
Autopointer class to be used with all services. Manages reference counter calls behind-the-scenes.
Definition: service.h:55
bool next(service_ptr_t< t_query > &p_out)
Definition: service.h:587
bool chapterizer::g_is_pregap_capable ( const char *  p_path)
static

Definition at line 24 of file chapterizer.cpp.

24  {
27  while(e.next(ptr)) {
28  if (ptr->supports_pregaps() && ptr->is_our_path(p_path)) {
29  return true;
30  }
31  }
32  return false;
33 }
Autopointer class to be used with all services. Manages reference counter calls behind-the-scenes.
Definition: service.h:55
bool next(service_ptr_t< t_query > &p_out)
Definition: service.h:587
virtual void chapterizer::get_chapters ( const char *  p_path,
chapter_list p_list,
abort_callback p_abort 
)
pure virtual

Retrieves chapter list from specified file.

Parameters
p_pathPath of file to examine.
p_listObject receiving chapter list.
p_abortabort_callback object signaling user aborting the operation.

Implemented in cue_parser::chapterizer_impl_t< I >, and cue_parser::chapterizer_impl_t< t_input_impl >.

virtual bool chapterizer::is_our_path ( const char *  p_path)
pure virtual

Tests whether specified path is supported by this implementation.

Parameters
p_extExtension of the file being processed.

Implemented in cue_parser::chapterizer_impl_t< I >, and cue_parser::chapterizer_impl_t< t_input_impl >.

virtual void chapterizer::set_chapters ( const char *  p_path,
chapter_list const &  p_list,
abort_callback p_abort 
)
pure virtual

Writes new chapter list to specified file.

Parameters
p_pathPath of file to modify.
p_listNew chapter list to write.
p_abortabort_callback object signaling user aborting the operation.

Implemented in cue_parser::chapterizer_impl_t< I >, and cue_parser::chapterizer_impl_t< t_input_impl >.

virtual bool chapterizer::supports_pregaps ( )
pure virtual

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