aboutsummaryrefslogtreecommitdiffstats
path: root/src/SongUpdate.cxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* SongUpdate: pass Storage to UpdateFileInArchive()Max Kellermann2014-02-071-4/+5
|
* SongUpdate: use the Storage interface, support remote filesMax Kellermann2014-02-061-14/+26
| | | | | | | This commit finally allows the database update to scan remote files, e.g. using the smbclient storage plugin. However, it is not yet possible to configure that, therefore the feature is not accessible yet.
* SongUpdate: make variables more localMax Kellermann2014-02-061-10/+5
|
* db: add compile-time option to disable databaseMax Kellermann2014-01-301-0/+8
|
* Database*: move to db/Max Kellermann2014-01-241-2/+2
|
* decoder/*: move to decoder/plugins/Max Kellermann2014-01-241-1/+1
|
* DetachedSong: add attribute "real_uri"Max Kellermann2014-01-211-1/+1
| | | | Prepare for UPnP songs that retain there database identity.
* Song: make the "parent" attribute mandatoryMax Kellermann2014-01-191-3/+2
| | | | | The Song class is only used for database songs now. A Song without a Directory is not possible anymore.
* Song: embed the Tag object statically into class SongMax Kellermann2014-01-191-4/+2
| | | | | Reduces overhead because we need to manage only one memory allocation. According to valgrind/massif, we save 7%.
* DetachedSong: add method Update()Max Kellermann2014-01-151-0/+37
| | | | | Don't create an intermediate Song instance when all we want is a DetachedSong.
* copyright year 2014Max Kellermann2014-01-131-1/+1
|
* DetachedSong: fork of struct SongMax Kellermann2014-01-091-7/+1
| | | | | | From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead.
* SongUpdate: move code to handle_lsinfo()Max Kellermann2014-01-081-14/+0
| | | | | Don't create a temporary Song object in handle_lsinfo(). Instead, print all tags while parsing the remote file.
* tag/TagBuilder: rename Commit() to CommitNew()Max Kellermann2014-01-081-3/+3
|
* command: "lsinfo" and "readcomments" allowed for remote filesMax Kellermann2013-12-291-0/+14
|
* SongUpdate: read tags from songs in an archiveMax Kellermann2013-12-291-5/+9
| | | | | Add the TagStream.cxx library, similar to TagFile.cxx, and use it to load tags from song files inside archives.
* DecoderList: add function decoder_plugins_supports_suffix()Max Kellermann2013-12-291-3/+1
| | | | Replaces decoder_plugin_from_suffix().
* TagFile: pass reference instead of pointerMax Kellermann2013-12-291-1/+1
|
* Merge branch 'v0.18.x'Max Kellermann2013-12-141-2/+1
|\
| * SongUpdate: accept files without metadatamobidyc2013-12-101-2/+1
| | | | | | | | | | If the file was recognized by a decoder plugin, accept it - don't require metadata.
* | fs/Traits: split PathTraits type into PathTraitsFS and PathTraitsUTF8Denis Krjuchkov2013-12-051-1/+1
| |
* | include cleanup using iwyuMax Kellermann2013-11-281-6/+0
|/
* TagFile: use Path instead of const char *Max Kellermann2013-10-261-3/+3
|
* SongUpdate: use tag_file_scan()Max Kellermann2013-10-211-63/+9
| | | | Eliminate duplicate code.
* decoder_plugin: rename struct to DecoderPluginMax Kellermann2013-10-211-2/+2
|
* *: use references instead of pointersMax Kellermann2013-10-191-3/+3
|
* *: use nullptr instead of NULLMax Kellermann2013-10-191-16/+16
|
* fs/Path: rename to AllocatedPathMax Kellermann2013-10-171-2/+2
| | | | | | | The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object.
* fs/Path: move definitions to struct PathTraitsMax Kellermann2013-10-171-1/+2
|
* fs/Path: include cleanupMax Kellermann2013-10-171-0/+1
|
* thread/{Cond,Mutex}: use "class" instead of "typedef"Max Kellermann2013-10-171-0/+1
| | | | Allows forward-declaration.
* Client, ...: remove unnecessary glib.h includeMax Kellermann2013-10-151-2/+0
|
* fs/Path: add method IsAbsolute()Max Kellermann2013-10-141-1/+1
|
* TagHandler: use a TagBuilder internallyMax Kellermann2013-09-261-11/+15
| | | | Reduce heap allocator overhead.
* Tag, ...: move to libtag.aMax Kellermann2013-09-051-2/+2
|
* InputLegacy: move functions to the input_stream classMax Kellermann2013-09-051-10/+7
|
* Tag*: move libtag.a sources to src/tag/Max Kellermann2013-09-041-2/+2
|
* util/Error: new error passing libraryMax Kellermann2013-09-041-2/+5
| | | | Replaces GLib's GError.
* input_stream.h: rename to InputLegacy.hxxMax Kellermann2013-09-031-1/+1
|
* Merge tag 'release-0.17.5'Max Kellermann2013-08-041-1/+1
|
* tag: convert to C++Max Kellermann2013-07-301-13/+10
|
* tag_handler: convert to C++Max Kellermann2013-07-291-4/+1
|
* ape: convert to C++Max Kellermann2013-07-291-1/+1
|
* tag_id3: convert to C++Max Kellermann2013-07-281-1/+1
|
* song: convert header to C++Max Kellermann2013-07-281-38/+33
|
* decoder_api: convert to C++Max Kellermann2013-07-281-1/+1
|
* uri: convert to C++Max Kellermann2013-04-081-1/+1
|
* SongUpdate.cxx: use StatFileDenis Krjuchkov2013-02-021-1/+2
|
* decoder_list: convert to C++Max Kellermann2013-01-301-2/+2
|
* DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann2013-01-271-14/+2
|