summaryrefslogtreecommitdiffstats
path: root/src/itdb.h
Commit message (Collapse)AuthorAgeFilesLines
* Documentation: mark functions added in 0.1.3Todd Zullinger2008-11-141-0/+2
|
* Documentation: mark functions added in 0.3.0Todd Zullinger2008-11-141-0/+2
|
* Documentation: mark functions added in 0.4.0Todd Zullinger2008-11-141-0/+10
|
* Documentation: mark functions added in 0.5.0Todd Zullinger2008-11-141-0/+26
|
* Documentation: mark functions added in 0.7.0Todd Zullinger2008-11-141-0/+4
|
* Documentation: align parameter descriptionsTodd Zullinger2008-11-141-30/+30
|
* Documentation: add Itdb_TrackTodd Zullinger2008-11-141-208/+399
|
* Documentation: add Itdb_SPLRulesTodd Zullinger2008-11-141-3/+14
|
* Documentation: add Itdb_SPLRuleTodd Zullinger2008-11-141-11/+35
|
* Documentation: add Itdb_SPLPrefTodd Zullinger2008-11-141-10/+24
|
* Documentation: add ItdbSPLFieldType (NEEDS WORK)Todd Zullinger2008-11-141-0/+12
|
* Documentation: add ItdbSPLFieldTodd Zullinger2008-11-141-42/+75
|
* Documentation: add ItdbSPLActionType (NEEDS WORK)Todd Zullinger2008-11-141-0/+16
|
* Documentation: add ItdbSPLAction (NEEDS WORK)Todd Zullinger2008-11-141-29/+49
|
* Documentation: add a number of enums, macros, and structsTodd Zullinger2008-11-141-132/+450
|
* Documentation: update API docsTodd Zullinger2008-11-141-3/+3
| | | | | Add new functions to the proper places in the documentation, remove old/unused functions, and clean up various minor issues.
* Whitespace cleanupTodd Zullinger2008-11-141-1/+1
|
* Remove chapterdata_raw and chapterdata_raw_length from Itdb_Tracktmzullinger2008-11-141-8/+0
| | | | | | | These are no longer needed now that proper Chapter Data support is available (since svn revision 1936/1937). git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2150 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.h: add enum entries for the new ipod classic and the newteuf2008-10-011-0/+5
| | | | | | | | | nanos * src/itdb_device.c: add entries for the new nanos and the new ipod classic, add some serial numbers for older ipod models git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2127 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* 2008-08-09 Paul Richardson <phantom_sf at users.sourceforge.net>phantom_sf2008-08-091-0/+1
| | | | | | | | | | | | | | * Added eclipse project related files to svn:ignore * src/db-artwork-parser.c src/itdb.h src/itdb_photoalbum.c: Added to Itdb_PhotoAlbum, a reference to its parent Photo DB. When albums are constructed upon loading of the Photo DB, the reference is added as part of initialisation. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2096 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Rename unk146 to explicit_flag in Itdb_Track now that it's purpose is knownTodd Zullinger2008-07-301-2/+3
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2073 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Some public API work, hide ItdbThumbType as well as ItdbThumbIpodChristophe Fergeau2008-07-291-12/+3
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2070 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Remove references to itdb_thumb_get_gdk_pixbuf()Todd Zullinger2008-07-171-9/+6
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2050 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Add missing 2GB ipod shuffle models and ipod shuffle redChristophe Fergeau2008-07-061-0/+1
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2042 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-artwork-writer.c:Christophe Fergeau2008-06-091-15/+0
| | | | | | | | | | | | | * src/db-image-parser.h: * src/itdb.h: * src/itdb_device.c: * src/itdb_device.h: * src/ithumb-writer.c: get rid of ItdbThumbType, it's replaced by pointers to the appropriate Itdb_ArtworkFormat for the thumbnail type when it's needed git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2010 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-artwork-parser.c: remove duplicated artwork/photo supportChristophe Fergeau2008-06-091-7/+6
| | | | | | | | | | | | | | | | | | | | | | | testing functions * src/db-artwork-parser.h: ditto * src/itdb_itunesdb.c: s/ipod_supports_XXX/itdb_device_supports_XXX * src/itdb_photoalbum.c: ditto * src/itdb.h: use a const Itdb_Device argument for itdb_device_supports_*, add ITDB_IPOD_GENERATION_IPHONE_1 to Itdb_IpodGeneration, get rid of ITDB_IPOD_GENERATION_FIFTH and ITDB_IPOD_GENERATION_SIXTH * src/itdb_device.c: split functions to get artwork format from the ipod in 2 separate functions: instead of itdb_device_get_artwork_formats we now have itdb_device_get_photo_formats and itdb_device_get_cover_art_formats * src/itdb_device.h: * src/db-image-parser.c: use the separate get_cover_art_formats/get_photos_formats functions * src/db-artwork-writer.c: ditto * src/ithumb-writer.c: ditto git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2009 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/Makefile.am:Christophe Fergeau2008-05-301-55/+20
| | | | | | | | | | | | | | | | | | | | | | | | | * src/db-artwork-parser.c: * src/db-artwork-writer.c: * src/db-image-parser.c: * src/db-image-parser.h: * src/itdb.h: * src/itdb_artwork.c: * src/itdb_device.h: * src/itdb_photoalbum.c: * src/itdb_track.c: * src/ithumb-writer.c: * tests/test-covers.c: * tests/test-photos.c: rework Itdb_Thumb type. Now it's split into different subtypes depending on what it represents (GdkPixbuf, thumbnail read from the ipod, ...). Itdb_Artwork now contains only a pointer to a single Itdb_Thumb (it used to contain a GList * of Itdb_Thumb) since the only time when the list is useful is for thumbs read from the ipod. Using a list for the other types of thumbnails created some complications when trying to set art on an Itdb_Track that wasn't attached to an Itdb_iTunesDB. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1991 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_track.c (itdb_track_set_thumbnails_internal): setJorg Schuler2008-05-281-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | artwork ID to 0 after removing thumbnails. * src/db-artwork-parser.c (parse_mhii): move out dbid association to a separate function. (mhfd_associate_itunesdb_artwork): handle dbid and mhii_link association of artwork to track (parse_mhfd): loop over the number of mhsd hunks instead of hardcoding it. Call mhfd_associate_itunesdb_artwork(). * src/itdb_itunesdb.c (get_mhit): read the mhii_link field. * src/db-artwork-writer.c (write_mhli): handle unset artwork correctly. (itdb_track_filter_thumbnails): remove thumbnails correctly. * src/db-parse-context.c (db_parse_context_get_sub_context): copy newly introduced artwork field. * tests/test-covers.c: print mhii_link. * src/itdb.h: (Itdb_Track) added mhii_link. (Itdb_Artwork): added dbid. * src/itdb.h, src/db-artwork-parser.c, src/db-artwork-writer.c, src/itdb_device.c, src/ithumb-writer.c, src/itdb_artwork.c: added ITDB_THUMB_CHAPTER_SMALL/LARGE. * src/itdb_device.c: ipod_classic_1_artwork_info: correct ITDB_THUMB_COVER_SMALL/LARGE entries. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1985 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_track.cJorg Schuler2008-01-261-1/+46
| | | | | | | | | | | * src/itdb_itunesdb.c * src/itdb_chapterdata * src/itdb.h * src/Makefile.am: applied chapterdata patch by Michael Tiffany. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1936 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Added support for video output of photos for iPod Nano Videos andJorg Schuler2007-11-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | iPod Classics. * src/ithumb-writer.c (pack_I420): added packer for iPod Nano Video and iPod Classic TV output photo format. (itdb_write_ithumb_files): make sure only valid thumbnail types are written. * src/db-image-parser.h: added declaration for itdb_thumb_type_is_valid_for_db() * src/itdb_photoalbum.c (itdb_photodb_add_photo_internal): make sure only photo thumbnails are added. * src/db-artwork-writer.c (write_mhii): correctly skip unneeded thumbnails (thumbnails not relevant for the current iPod type). (should_write): renamed to itdb_thumb_type_is_valid_for_db() src/itdb.h src/itdb_artwork.c: minor formatting. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1753 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_device.c:Jorg Schuler2007-09-151-2/+26
| | | | | | | | | | | | | | | | | | | | | Re-organized the representation of iPod models -- instead of 1st to 7th generation more well-known names like "iPod Nano 1G", "iPod Nano 2G"... are used. Added untested support for iPod Classic Artwork. Not clear which thumbnail type is used for what. src/itdb_track.c (itdb_track_set_thumbnails_internal): Please note: itdb_track_set_thumbnails() needs to be thought over to make sure all thumbnail types are added properly. Please see note in itdb_track.c for details. src/itdb.h: Added symbols for the new representation indicated above: ITDB_IPOD_GENERATION_*, ITDB_IPOD_MODEL_* git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1695 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-image-parser.cJorg Schuler2007-09-081-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | src/itdb_device.c src/ithumb-writer.c src/db-image-parser.h src/itdb_device.h src/itdb.h src/itdb_artwork.c tests/test-covers.c: added support to read and write coverart on iPhones. New cover formats are: MEDIUM, XLARGE, XSMALL, SMEDIUM -- should be renamed if function becomes clearer. Introduced New image formats for the thumbnails (THUMB_FORMAT_RGB555, THUMB_FORMAT_REC_RGB555). Coding/decoding functions are pack_/unpack_RGB_555() and pack_/unpack_REC_RGB_555(). Introduced possible padding for thumbnail files (Itdb_ArtworkFormat). * src/db-artwork-parser.c: make output filename unique. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1691 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * itdb_itunesdb.c (itdb_get_control_dir):Jorg Schuler2007-09-041-1/+2
| | | | | | | | | | | | | | | added support for iPhones * itdb.h: added ITDB_IPOD_MODEL_IPHONE_1 enum * itdb_device.c: added iPhone description TODO: define artwork definition in itdb_device.c -- currently artwork is not supported. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1690 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* remove references to Mac type timestampsTodd Zullinger2007-07-051-14/+12
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1623 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.h: corrected description for "BPM" (beats per minute)Jorg Schuler2007-06-171-1/+1
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1552 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_itunesdb.cJorg Schuler2007-06-171-16/+15
| | | | | | | | | | | | | src/itdb.h: libgpod will not change the values for sort_artist. Furthermore, libgpod reads the stored values of sort_artist/_album... from the iTunesDB and makes them available through the Itdb_Track structure. Applications should modify these values along with the corresponding artist/album... fields if a particular sort order is required. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1549 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.h: warning about adding string fieldsJorg Schuler2007-05-171-0/+5
| | | | | | | | src/itdb_track_duplicate: duplicate new string fields (sort_*). Thanks to Raymond Walsh. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1435 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Minor documentation cleanups.Todd Zullinger2007-05-121-0/+2
| | | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1430 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_itunesdb.cJorg Schuler2007-05-061-7/+15
| | | | | | | | | | | | | | | | | | | | | | | src/itdb_device.c src/itdb_private.h src/itdb.h: New API functions to facilitate copying to the iPod in a background thread and implementation of own copying code. itdb_cp_get_dest_filename(): obtain a valid filename on the iPod to where a track can be copied. This function can be used in a thread-safe way. itdb_cp_finalize(): to be called after the track was copied to the iPod to update some fields in the Itdb_Track structure. This function can also be used in a thread-safe way. You can use the already existing function itdb_cp() to copy a track to the iPod and itdb_cp_track_to_ipod() remains available unchanged in functionality. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1426 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * docs/reference/tmpl/track.sgmlJorg Schuler2007-04-281-47/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/itdb.h src/itdb_itunesdb.c src/itdb_track.c: Added the following fields to Itdb_Track: sort_artist sort_title sort_album sort_albumartist sort_composer sort_tvshow These fields can (theoretically) be used to force a certain sort order on the iPod when displaying by artist, album... Even though these fields are present in the iTunesDB, they are discarded when reading the iTunesDB and applications must always set them before writing the iTunesDB again. This is to avoid that the fields 'artist' and 'sort_artist' accidentially get out of sync. libgpod will automatically create a sort_artist key for you if artist is of the type 'The Artist' and sort_artist is not set. The sort key used in that case is 'Artist, The' (followed by five time 0x01), even though sort_artist itself will not be touched. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1421 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.h: added padding to exported structures so new entriesJorg Schuler2007-04-281-18/+76
| | | | | | | | | can be added without loosing backward run-time compatibility. Comments welcome. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1420 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-04-271-147/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/itdb_itunesdb.c src/itdb_playlist.c src/itdb_private.h: namespace cleanup. Applications supporting smart playlists will have to be adapted. The following changes were implemented to make sure all exported symbols start with ITDB or Itdb: structs: SPLPref -> Itdb_SPLPref SPLRules -> Itdb_SPLRules SPLRule -> Itdb_SPLRule SPL_* -> ITDB_SPL_* enums, #defines: LIMITTYPE_* -> ITDB_LIMITTYPE_* LIMITSORT_* -> ITDB_LIMITSORT_* SPLMATCH_* -> ITDB_SPLMATCH_* SPLACTION_* -> ITDB_SPLACTION_* SPLFIELD_* -> ITDB_SPLFIELD_* SPLDATE_IDENTIFIER -> ITDB_SPL_DATE_IDENTIFIER splft_* -> ITDB_SPLFT_* splat_* -> ITDB_SPLAT_* enum SPLAction -> ItdbSPLAction enum SPLActionType -> ItdbSPLActionType enum SPLField -> ItdbSPLField enum SPLFieldType -> ItdbSPLFieldType enum ItdbLimitType (new) enum ItdbLimitSort (new) enum ItdbSPLMatch (new) removed SPL_MAXSTRINGLENGTH (use ITDB_SPL_STRING_MAXLEN) git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1418 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * docs/reference/tmpl/device.sgmlJorg Schuler2007-04-271-15/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | docs/reference/tmpl/itunesdb-time.sgml docs/reference/tmpl/libgpod-unused.sgml docs/reference/tmpl/track.sgml src/db-artwork-parser.c src/db-artwork-writer.c src/db-itunes-parser.h src/itdb.h src/itdb_device.c src/itdb_device.h src/itdb_itunesdb.c src/itdb_private.h tests/Makefile.am: Christophe's patch for automatic correction of timestamps depending on which timezone the iPod is set to. ATTENTION DEVELOPERS: as a consequence all exported timestamps are no longer guint32 mac-type timestamps but standard time_t timestamps. This also includes the 64 bit timestamps in smart playlists. The following functions are therefore no longer needed and are deprecated: itdb_time_mac_to_host(), itdb_time_host_to_mac(): simply return the argument without changing it. Argument and return value are now both of type 'time_t'. itunesdb_time_get_mac_time(): returns the seconds passed since Epoch in seconds and is equivalent to time(NULL). These functions may be removed in a future version of libgpod. Programs linking to libgpod may need to be changed slightly if they made any assumptions on the type of timestamps used. This should be obvious through compile-time warnings. tests/test-ls.c: print a list of recently played tracks. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1417 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* 2007-04-14 Christophe Fergeau <teuf@gnome.org>Christophe Fergeau2007-04-141-0/+2
| | | | | | | | | | | * src/itdb_device.c: add itdb_device_supports_artwork and idb_device_supports_photo functions * docs/reference/tmpl/device.sgml: update api doc * src/itdb_itunesdb.c: don't try to write artwork database if the iPod model doesn't support artwork. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1414 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.h: changed 'gchar *chapterdata' to 'gpointerJorg Schuler2007-04-081-3/+2
| | | | | | | | | | chapterdata' with note that chapterdata is not yet supported. * src/itdb_track.c (itdb_track_duplicate): arrange the strings in the same order as in Itdb_Track for easier error-checking. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1413 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-03-211-0/+14
| | | | | | | | | | | | | | src/itdb_artwork.c src/itdb_photoalbum.c src/itdb_track.c src/ithumb-writer.c: Added new API functions: itdb_photodb_add_photo_from_pixbuf function(), itdb_track_set_thumbnails_from_pixbuf() and itdb_artwork_add_thumbnail_from_pixbuf(). Thanks to Christophe Fergeau. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1405 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-02-251-2/+14
| | | | | | | | | | | | | | | src/itdb_itunesdb.c src/itdb_playlist.c: introduced splft_binary_and as separate field type as this will simplify handling in applications. * src/itdb_itunesdb.c (get_mhod, mk_mhod): replaced if()... with a switch()... to catch changes made to SPLFieldType more easily. * src/itdb.h: introduced Itdb_Mediatype enum. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1398 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-02-241-5/+13
| | | | | | | | | | | src/itdb_itunesdb.c src/itdb_playlist.c: Updated smart playlist handling to recognize album artist, tv show, last skipped, season number, skipcount and video kind fields. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1396 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-01-181-2/+2
| | | | | | | | src/itdb_itunesdb.c (itdb_cp_track_to_ipod): changed declaration of 'filename' from "gchar *" to "const gchar *". git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1389 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Add PhotoDB functions to the docs.Todd Zullinger2007-01-111-1/+1
| | | | | | | | Incorporate usage overviews from README into the docs. Fix a few doc comments to allow gtk-doc to parse them. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1356 f01d2545-417e-4e96-918e-98f8d0dbbcb6