foobar2000 SDK  2015-01-14
search_tools.h
Go to the documentation of this file.
1 class search_filter : public service_base {
5 public:
6 protected:
8  virtual bool test_locked(const metadb_handle_ptr & p_item,const file_info * p_info) = 0;
9 public:
10 
14  virtual void test_multi(metadb_handle_list_cref data, bool * out) = 0;
15 
17 };
18 
21 public:
22  virtual bool get_sort_pattern(titleformat_object::ptr & out, int & direction) = 0;
23 
25  virtual void test_multi_ex(metadb_handle_list_cref data, bool * out, abort_callback & abort) = 0;
26 
29 
31 };
32 
35 public:
37  virtual bool is_sort_explicit() = 0;
38 
40 };
41 
44 public:
46  virtual search_filter::ptr create(const char * p_query) = 0;
47 
49  virtual void get_manual(pfc::string_base & p_out) = 0;
50 
51  void show_manual();
52 
54 };
55 
58 public:
59  enum {
60  KFlagAllowSort = 1 << 0,
62  };
65  virtual search_filter_v2::ptr create_ex(const char * query, completion_notify::ptr changeNotify, t_uint32 flags) = 0;
66 
68  virtual void show_manual() = 0;
69 
71 };
FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT(search_filter_manager)
New in 0.9.5.4. You can obtain a search_filter_v2 pointer by using service_query() on a search_filter...
Definition: search_tools.h:34
FB2K_MAKE_SERVICE_INTERFACE(search_filter, service_base)
New in 0.9.5.3. You can obtain a search_filter_v2 pointer by using service_query() on a search_filter...
Definition: search_tools.h:20
virtual void get_manual(pfc::string_base &p_out)=0
Retrieves the search expression manual string. See also: show_manual().
virtual void show_manual()=0
Opens the search query syntax reference document, typically an external HTML in user's default web br...
virtual bool is_sort_explicit()=0
Returns whether the sort pattern returned by get_sort_pattern() was set by the user explicitly using ...
virtual search_filter_v2::ptr create_ex(const char *query, completion_notify::ptr changeNotify, t_uint32 flags)=0
Creates a search_filter object. Throws an exception on failure (such as an error in the query)...
Main interface class for information about some playable object.
Definition: file_info.h:73
virtual bool test_locked(const metadb_handle_ptr &p_item, const file_info *p_info)=0
For backwards compatibility with older (0.9.5 alpha) revisions of this API. Do not call...
Base class for all service classes. Provides interfaces for reference counter and querying for differ...
Definition: service.h:333
void test_multi_here(metadb_handle_list &ref, abort_callback &abort)
Helper; removes non-matching items from the list.
Instance of a search filter object. New in 0.9.5. This object contains a preprocessed search query; ...
Definition: search_tools.h:4
virtual bool get_sort_pattern(titleformat_object::ptr &out, int &direction)=0
virtual void test_multi_ex(metadb_handle_list_cref data, bool *out, abort_callback &abort)=0
Abortable version of test_multi(). If the abort_callback object becomes signaled while the operation ...
Entrypoint class to instantiate search_filter objects. New in 0.9.5.
Definition: search_tools.h:43
New in 0.9.5.3.
Definition: search_tools.h:57
virtual void test_multi(metadb_handle_list_cref data, bool *out)=0
Use this to run this filter on a group of items.
virtual search_filter::ptr create(const char *p_query)=0
Creates a search_filter object. Throws an exception on failure (such as an error in the query)...
FB2K_MAKE_SERVICE_INTERFACE(search_filter_manager_v2, search_filter_manager)
uint32_t t_uint32
Definition: int_types.h:5