new functionality - file_get_properties()
[mediadatabase.git] / libdb / sqlite.h
blob0a47cd757d520c958b0194979abed31ee6db6670
1 /* -*- Mode: C ; c-basic-offset: 2 -*- */
2 /*****************************************************************************
4 * $Id: sqlite.h,v 1.10 2005/03/05 21:39:44 nedko Exp $
6 * DESCRIPTION:
7 * SQLite backend header.
9 * AUTHOR:
10 * Nedko Arnaudov <nedko@users.sourceforge.net>
12 * LICENSE:
13 * GNU GENERAL PUBLIC LICENSE version 2
15 *****************************************************************************/
17 #ifndef SQLITE_H__B1AEAB83_AA4D_4E16_9036_43389679E923__INCLUDED
18 #define SQLITE_H__B1AEAB83_AA4D_4E16_9036_43389679E923__INCLUDED
20 #include <sqlite.h>
22 typedef struct
24 sqlite * hDB;
25 char *pErrorMsgBuffer;
26 size_t sizeErrorMsgBuffer;
27 } mediadb_sqlite;
29 mediadb_result
30 mediadb_sqlite_open(
31 mediadb_sqlite *pDB,
32 const char *pszHost,
33 const char *pszUser,
34 const char *pszPass,
35 const char *pszDB);
37 mediadb_result
38 mediadb_sqlite_media_add_new(
39 mediadb_sqlite *pDB,
40 const char *pszName,
41 const char *pszComment,
42 mediadb_mediatype nType,
43 mediadb_uint *pnNewMediaID);
45 mediadb_result
46 mediadb_sqlite_media_update_properties(
47 mediadb_sqlite *pDB,
48 mediadb_uint nMediaID,
49 mediadb_uint nTimeAdded,
50 mediadb_uint nTotalFiles,
51 mediadb_uint nTotalSize);
53 mediadb_result
54 mediadb_sqlite_file_add_new(
55 mediadb_sqlite *pDB,
56 mediadb_uint nMediaID,
57 mediadb_filetype Filetype,
58 const char *pszPath,
59 const char *pszName,
60 mediadb_uint nFileSize,
61 mediadb_uint nFileTime);
63 mediadb_result
64 mediadb_sqlite_media_get_properties(
65 mediadb_sqlite *pDB,
66 mediadb_uint nMediaID,
67 mediadb_uint *pnTimeAdded,
68 mediadb_mediatype *pnType,
69 mediadb_uint *pnLocationID,
70 char **ppszTitle);
72 mediadb_result
73 mediadb_sqlite_location_get_properties(
74 mediadb_sqlite *pDB,
75 mediadb_uint nLocationID,
76 mediadb_uint *pnLocationTypeID,
77 char **ppszDescription);
79 mediadb_result
80 mediadb_sqlite_location_type_get_properties(
81 mediadb_sqlite *pDB,
82 mediadb_uint nLocationTypeID,
83 char **ppszDescription);
85 mediadb_result
86 mediadb_sqlite_media_get_properties_data(
87 mediadb_sqlite *pDB,
88 mediadb_uint nMediaID,
89 mediadb_uint *pnTotalFiles,
90 mediadb_uint *pnTotalSize);
92 mediadb_result
93 mediadb_sqlite_delete_media_files(
94 mediadb_sqlite *pDB,
95 mediadb_uint nMediaID);
97 mediadb_result
98 mediadb_sqlite_media_update_name(
99 mediadb_sqlite *pDB,
100 mediadb_uint nMediaID,
101 const char *pszName);
103 mediadb_result
104 mediadb_sqlite_close(
105 mediadb_sqlite *pDB);
107 const char *
108 mediadb_sqlite_get_error_message(
109 mediadb_sqlite *pDB);
111 mediadb_result
112 mediadb_sqlite_media_get_all(
113 mediadb_sqlite *pDB,
114 mediadb_media_callback pCallback,
115 void *pUserContext);
117 mediadb_result
118 mediadb_sqlite_files_get(
119 mediadb_sqlite *pDB,
120 mediadb_uint nMediaID,
121 const char *pszPath,
122 mediadb_files_callback pCallback,
123 void *pUserContext);
125 mediadb_result
126 mediadb_sqlite_get_pattern_match_methods(
127 mediadb_sqlite *pDB,
128 const struct mediadb_pattern_match_method **ppPMM);
130 mediadb_result
131 mediadb_sqlite_files_search(
132 mediadb_sqlite *pDB,
133 mediadb_uint nFilenamePMMID,
134 const char *pszFilenamePattern,
135 mediadb_uint nPathPMMID,
136 const char *pszPathPattern,
137 const mediadb_uint *pnMinSize,
138 const mediadb_uint *pnMaxSize,
139 mediadb_files_search_callback pCallback,
140 void *pUserContext);
142 mediadb_result
143 mediadb_sqlite_file_get_properties(
144 mediadb_sqlite *pDB,
145 mediadb_uint nMediaID,
146 const char *pszPath,
147 const char *pszName,
148 mediadb_filetype *pFiletype,
149 mediadb_uint *pnSize,
150 mediadb_uint *pnTime);
152 #endif /* #ifndef SQLITE_H__B1AEAB83_AA4D_4E16_9036_43389679E923__INCLUDED */
154 /*****************************************************************************
156 * Modifications log:
158 * !!! WARNING !!! Following lines are automatically updated by the CVS system.
160 * $Log: sqlite.h,v $
161 * Revision 1.10 2005/03/05 21:39:44 nedko
162 * new functionality - file_get_properties()
164 * Revision 1.9 2004/08/31 22:40:15 nedko
165 * Partitally implemented search feature.
167 * Revision 1.8 2004/08/08 00:47:42 nedko
168 * Get more info for media from database.
170 * Revision 1.7 2004/05/21 23:40:46 nedko
171 * New functionality: mediadb_files_get()
173 * Revision 1.6 2004/05/16 18:57:12 nedko
174 * media_get_all functionality implemented.
176 * Revision 1.5 2004/05/11 01:18:53 nedko
177 * Implement SQLite backend.
179 * Revision 1.4 2004/05/03 20:47:15 nedko
180 * Update mode for cui
182 * Revision 1.3 2004/05/02 20:12:10 nedko
183 * Improve error dumps.
185 * Revision 1.2 2004/05/02 13:16:58 nedko
186 * Supply filetype when adding new file
188 * Revision 1.1 2004/04/27 09:12:28 nedko
189 * Initial revision.
191 *****************************************************************************/