foobar2000 SDK
2015-08-03
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
foobar2000
helpers
metadb_io_hintlist.h
Go to the documentation of this file.
1
2
class
metadb_io_hintlist
{
3
public
:
4
void
hint_reader
(
service_ptr_t<input_info_reader>
p_reader,
const
char
* p_path,
abort_callback
& p_abort);
5
void
add
(
metadb_handle_ptr
const
& p_handle,
const
file_info
& p_info,t_filestats
const
& p_stats,
bool
p_fresh);
6
void
run
();
7
t_size
get_pending_count
()
const
{
return
m_entries
.get_count();}
8
private
:
9
struct
t_entry
{
10
metadb_handle_ptr
m_handle
;
11
pfc::rcptr_t<file_info_const_impl>
m_info
;
12
t_filestats
m_stats
;
13
bool
m_fresh
;
14
};
15
class
metadb_io_hintlist_wrapper_part1
:
public
pfc::list_base_const_t
<metadb_handle_ptr> {
16
public
:
17
metadb_io_hintlist_wrapper_part1
(
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
& p_list) : m_list(p_list) {}
18
t_size
get_count
()
const
{
return
m_list.get_count();}
19
void
get_item_ex
(
metadb_handle_ptr
& p_out,
t_size
n)
const
{p_out = m_list[n].m_handle;}
20
21
private
:
22
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
&
m_list
;
23
};
24
class
metadb_io_hintlist_wrapper_part2
:
public
pfc::list_base_const_t
<const file_info*> {
25
public
:
26
metadb_io_hintlist_wrapper_part2
(
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
& p_list) : m_list(p_list) {}
27
t_size
get_count
()
const
{
return
m_list.get_count();}
28
void
get_item_ex
(
const
file_info
* & p_out,
t_size
n)
const
{p_out = &*m_list[n].m_info;}
29
private
:
30
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
&
m_list
;
31
};
32
class
metadb_io_hintlist_wrapper_part3
:
public
pfc::list_base_const_t
<t_filestats> {
33
public
:
34
metadb_io_hintlist_wrapper_part3
(
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
& p_list) : m_list(p_list) {}
35
t_size
get_count
()
const
{
return
m_list.get_count();}
36
void
get_item_ex
(t_filestats & p_out,
t_size
n)
const
{p_out = m_list[n].m_stats;}
37
private
:
38
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
&
m_list
;
39
};
40
class
metadb_io_hintlist_wrapper_part4
:
public
bit_array
{
41
public
:
42
metadb_io_hintlist_wrapper_part4
(
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
& p_list) : m_list(p_list) {}
43
bool
get
(
t_size
n)
const
{
return
m_list[n].m_fresh;}
44
private
:
45
const
pfc::list_base_const_t<metadb_io_hintlist::t_entry>
&
m_list
;
46
};
47
48
pfc::list_t<t_entry,pfc::alloc_fast>
m_entries
;
49
};
50
metadb_io_hintlist::metadb_io_hintlist_wrapper_part1
Definition:
metadb_io_hintlist.h:15
metadb_io_hintlist::metadb_io_hintlist_wrapper_part3::metadb_io_hintlist_wrapper_part3
metadb_io_hintlist_wrapper_part3(const pfc::list_base_const_t< metadb_io_hintlist::t_entry > &p_list)
Definition:
metadb_io_hintlist.h:34
metadb_io_hintlist::metadb_io_hintlist_wrapper_part3::m_list
const pfc::list_base_const_t< metadb_io_hintlist::t_entry > & m_list
Definition:
metadb_io_hintlist.h:38
metadb_io_hintlist::metadb_io_hintlist_wrapper_part2::metadb_io_hintlist_wrapper_part2
metadb_io_hintlist_wrapper_part2(const pfc::list_base_const_t< metadb_io_hintlist::t_entry > &p_list)
Definition:
metadb_io_hintlist.h:26
pfc::list_t
Definition:
list.h:579
metadb_io_hintlist::metadb_io_hintlist_wrapper_part2::get_item_ex
void get_item_ex(const file_info *&p_out, t_size n) const
Definition:
metadb_io_hintlist.h:28
metadb_io_hintlist::metadb_io_hintlist_wrapper_part3::get_count
t_size get_count() const
Definition:
metadb_io_hintlist.h:35
pfc::bit_array
Bit array interface class, constant version (you can only retrieve values). Range of valid indexes d...
Definition:
bit_array.h:6
metadb_io_hintlist::metadb_io_hintlist_wrapper_part2
Definition:
metadb_io_hintlist.h:24
metadb_io_hintlist::metadb_io_hintlist_wrapper_part4::m_list
const pfc::list_base_const_t< metadb_io_hintlist::t_entry > & m_list
Definition:
metadb_io_hintlist.h:45
pfc::list_base_const_t
Definition:
list.h:7
metadb_io_hintlist::metadb_io_hintlist_wrapper_part1::m_list
const pfc::list_base_const_t< metadb_io_hintlist::t_entry > & m_list
Definition:
metadb_io_hintlist.h:22
metadb_io_hintlist::t_entry::m_stats
t_filestats m_stats
Definition:
metadb_io_hintlist.h:12
metadb_io_hintlist::get_pending_count
t_size get_pending_count() const
Definition:
metadb_io_hintlist.h:7
pfc::rcptr_t< file_info_const_impl >
metadb_io_hintlist::t_entry::m_handle
metadb_handle_ptr m_handle
Definition:
metadb_io_hintlist.h:10
file_info
Main interface class for information about some playable object.
Definition:
file_info.h:73
metadb_io_hintlist::run
void run()
Definition:
metadb_io_hintlist.cpp:3
metadb_io_hintlist::metadb_io_hintlist_wrapper_part1::get_item_ex
void get_item_ex(metadb_handle_ptr &p_out, t_size n) const
Definition:
metadb_io_hintlist.h:19
t_size
size_t t_size
Definition:
int_types.h:48
metadb_io_hintlist::t_entry::m_info
pfc::rcptr_t< file_info_const_impl > m_info
Definition:
metadb_io_hintlist.h:11
metadb_io_hintlist::t_entry
Definition:
metadb_io_hintlist.h:9
metadb_io_hintlist::metadb_io_hintlist_wrapper_part2::get_count
t_size get_count() const
Definition:
metadb_io_hintlist.h:27
abort_callback
metadb_io_hintlist::metadb_io_hintlist_wrapper_part3
Definition:
metadb_io_hintlist.h:32
metadb_io_hintlist::metadb_io_hintlist_wrapper_part3::get_item_ex
void get_item_ex(t_filestats &p_out, t_size n) const
Definition:
metadb_io_hintlist.h:36
metadb_io_hintlist::t_entry::m_fresh
bool m_fresh
Definition:
metadb_io_hintlist.h:13
service_ptr_t< input_info_reader >
metadb_io_hintlist::metadb_io_hintlist_wrapper_part4::metadb_io_hintlist_wrapper_part4
metadb_io_hintlist_wrapper_part4(const pfc::list_base_const_t< metadb_io_hintlist::t_entry > &p_list)
Definition:
metadb_io_hintlist.h:42
metadb_io_hintlist::metadb_io_hintlist_wrapper_part4
Definition:
metadb_io_hintlist.h:40
metadb_io_hintlist::add
void add(metadb_handle_ptr const &p_handle, const file_info &p_info, t_filestats const &p_stats, bool p_fresh)
Definition:
metadb_io_hintlist.cpp:15
metadb_io_hintlist::metadb_io_hintlist_wrapper_part1::metadb_io_hintlist_wrapper_part1
metadb_io_hintlist_wrapper_part1(const pfc::list_base_const_t< metadb_io_hintlist::t_entry > &p_list)
Definition:
metadb_io_hintlist.h:17
metadb_io_hintlist::m_entries
pfc::list_t< t_entry, pfc::alloc_fast > m_entries
Definition:
metadb_io_hintlist.h:48
metadb_io_hintlist::metadb_io_hintlist_wrapper_part1::get_count
t_size get_count() const
Definition:
metadb_io_hintlist.h:18
metadb_io_hintlist::hint_reader
void hint_reader(service_ptr_t< input_info_reader > p_reader, const char *p_path, abort_callback &p_abort)
Definition:
metadb_io_hintlist.cpp:24
metadb_io_hintlist
Definition:
metadb_io_hintlist.h:2
metadb_io_hintlist::metadb_io_hintlist_wrapper_part2::m_list
const pfc::list_base_const_t< metadb_io_hintlist::t_entry > & m_list
Definition:
metadb_io_hintlist.h:30
Generated by
1.8.11