libmusicbrainz3  3.0.2
mb_c.h
Go to the documentation of this file.
1 /*
2  * MusicBrainz -- The Internet music metadatabase
3  *
4  * Copyright (C) 2006 Lukas Lalinsky
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19  *
20  * $Id: mb_c.h 9932 2008-07-02 06:48:17Z luks $
21  */
22 
23 #ifndef __MUSICBRAINZ3_MB_C_H__
24 #define __MUSICBRAINZ3_MB_C_H__
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 #include <musicbrainz3/defines.h>
31 
32 /* {{{ Typedefs */
33 
34 typedef void *MbArtist;
35 typedef void *MbArtistAlias;
36 typedef void *MbArtistFilter;
37 typedef void *MbArtistIncludes;
38 typedef void *MbDisc;
39 typedef void *MbEntity;
40 typedef void *MbQuery;
41 typedef void *MbRelation;
42 typedef void *MbRelease;
43 typedef void *MbReleaseEvent;
44 typedef void *MbReleaseFilter;
45 typedef void *MbReleaseIncludes;
46 typedef void *MbResultList;
47 typedef void *MbTrack;
48 typedef void *MbTrackFilter;
49 typedef void *MbTrackIncludes;
50 typedef void *MbUser;
51 typedef void *MbUserFilter;
52 typedef void *MbWebService;
53 
54 /* }}} */
55 
56 /* {{{ MusicBrainz::WebService */
57 
63 MB_API MbWebService
65 
71 MB_API void
72 mb_webservice_free(MbWebService webservice);
73 
77 MB_API void
78 mb_webservice_set_host(MbWebService webservice, const char *str);
79 
83 MB_API void
84 mb_webservice_set_port(MbWebService webservice, int port);
85 
89 MB_API void
90 mb_webservice_set_path_prefix(MbWebService webservice, const char *str);
91 
95 MB_API void
96 mb_webservice_set_username(MbWebService webservice, const char *str);
97 
101 MB_API void
102 mb_webservice_set_password(MbWebService webservice, const char *str);
103 
107 MB_API void
108 mb_webservice_set_realm(MbWebService webservice, const char *str);
109 
113 MB_API void
114 mb_webservice_set_proxy_host(MbWebService webservice, const char *str);
115 
119 MB_API void
120 mb_webservice_set_proxy_port(MbWebService webservice, int port);
121 
125 MB_API void
126 mb_webservice_set_proxy_username(MbWebService webservice, const char *str);
127 
131 MB_API void
132 mb_webservice_set_proxy_password(MbWebService webservice, const char *str);
133 
134 /* }}} */
135 
136 /* {{{ MusicBrainz::Query */
137 
143 MB_API MbQuery
144 mb_query_new(MbWebService ws, const char *client_id);
145 
151 MB_API void
152 mb_query_free(MbQuery query);
153 
159 MB_API MbArtist
160 mb_query_get_artist_by_id(MbQuery query, const char *id, MbArtistIncludes inc);
161 
167 MB_API MbRelease
168 mb_query_get_release_by_id(MbQuery query, const char *id, MbReleaseIncludes inc);
169 
175 MB_API MbTrack
176 mb_query_get_track_by_id(MbQuery query, const char *id, MbTrackIncludes inc);
177 
183 MB_API MbUser
184 mb_query_get_user_by_name(MbQuery query, const char *name);
185 
186 /* }}} */
187 
188 MB_API void
189 mb_result_list_free(MbResultList list);
190 
191 MB_API int
192 mb_result_list_get_size(MbResultList list);
193 
194 MB_API int
195 mb_result_list_get_score(MbResultList list, int index);
196 
197 MB_API MbArtist
198 mb_result_list_get_artist(MbResultList list, int index);
199 
200 MB_API MbRelease
201 mb_result_list_get_release(MbResultList list, int index);
202 
203 MB_API MbTrack
204 mb_result_list_get_track(MbResultList list, int index);
205 
206 MB_API MbResultList
207 mb_query_get_artists(MbQuery query, MbArtistFilter flt);
208 
209 MB_API MbResultList
210 mb_query_get_releases(MbQuery query, MbReleaseFilter flt);
211 
212 MB_API MbResultList
213 mb_query_get_tracks(MbQuery query, MbTrackFilter flt);
214 
215 /* {{{ MusicBrainz::Artist */
216 
220 MB_API void
221 mb_artist_free(MbArtist artist);
222 
228 MB_API void
229 mb_artist_get_id(MbArtist artist, char *str, int len);
230 
236 MB_API void
237 mb_artist_get_type(MbArtist artist, char *str, int len);
238 
244 MB_API void
245 mb_artist_get_name(MbArtist artist, char *str, int len);
246 
252 MB_API void
253 mb_artist_get_sortname(MbArtist artist, char *str, int len);
254 
260 MB_API void
261 mb_artist_get_disambiguation(MbArtist artist, char *str, int len);
262 
268 MB_API void
269 mb_artist_get_unique_name(MbArtist artist, char *str, int len);
270 
276 MB_API void
277 mb_artist_get_begin_date(MbArtist artist, char *str, int len);
278 
284 MB_API void
285 mb_artist_get_end_date(MbArtist artist, char *str, int len);
286 
292 MB_API int
293 mb_artist_get_num_aliases(MbArtist artist);
294 
300 MB_API MbArtistAlias
301 mb_artist_get_alias(MbArtist artist, int index);
302 
308 MB_API int
309 mb_artist_get_num_releases(MbArtist artist);
310 
316 MB_API MbRelease
317 mb_artist_get_release(MbArtist artist, int index);
318 
324 MB_API int
325 mb_artist_get_releases_offset(MbArtist artist);
326 
332 MB_API int
333 mb_artist_get_releases_count(MbArtist artist);
334 
340 MB_API int
341 mb_artist_get_num_relations(MbArtist artist);
342 
348 MB_API MbRelation
349 mb_artist_get_relation(MbArtist artist, int index);
350 
351 /* }}} */
352 
353 /* {{{ MusicBrainz::Release */
354 
358 MB_API void
359 mb_release_free(MbRelease release);
360 
366 MB_API void
367 mb_release_get_id(MbRelease release, char *str, int len);
368 
374 MB_API void
375 mb_release_get_title(MbRelease release, char *str, int len);
376 
382 MB_API void
383 mb_release_get_text_language(MbRelease release, char *str, int len);
384 
390 MB_API void
391 mb_release_get_text_script(MbRelease release, char *str, int len);
392 
398 MB_API void
399 mb_release_get_asin(MbRelease release, char *str, int len);
400 
406 MB_API MbArtist
407 mb_release_get_artist(MbRelease release);
408 
414 MB_API int
415 mb_release_get_tracks_offset(MbRelease release);
416 
422 MB_API int
423 mb_release_get_tracks_count(MbRelease release);
424 
430 MB_API int
431 mb_release_get_num_relations(MbRelease release);
432 
438 MB_API MbRelation
439 mb_release_get_relation(MbRelease release, int index);
440 
446 MB_API int
447 mb_release_get_num_tracks(MbRelease release);
448 
454 MB_API MbTrack
455 mb_release_get_track(MbRelease release, int index);
456 
462 MB_API int
463 mb_release_get_num_discs(MbRelease release);
464 
470 MB_API MbDisc
471 mb_release_get_disc(MbRelease release, int index);
472 
478 MB_API int
479 mb_release_get_num_release_events(MbRelease release);
480 
486 MB_API MbReleaseEvent
487 mb_release_get_release_event(MbRelease release, int index);
488 
494 MB_API int
495 mb_release_get_num_types(MbRelease release);
496 
502 MB_API void
503 mb_release_get_type(MbRelease release, int index, char *str, int len);
504 
505 /* }}} */
506 
507 /* {{{ MusicBrainz::Track */
508 
512 MB_API void
513 mb_track_free(MbTrack track);
514 
520 MB_API void
521 mb_track_get_id(MbTrack track, char *str, int len);
522 
528 MB_API void
529 mb_track_get_title(MbTrack track, char *str, int len);
530 
536 MB_API int
537 mb_track_get_duration(MbTrack track);
538 
544 MB_API int
545 mb_track_get_num_relations(MbTrack track);
546 
552 MB_API MbRelation
553 mb_track_get_relation(MbTrack track, int index);
554 
560 MB_API MbArtist
561 mb_track_get_artist(MbTrack track);
562 
563 /* }}} */
564 
565 /* {{{ MusicBrainz::ArtistAlias */
566 
572 MB_API void
573 mb_artist_alias_get_value(MbArtistAlias alias, char *str, int len);
574 
580 MB_API void
581 mb_artist_alias_get_type(MbArtistAlias alias, char *str, int len);
582 
588 MB_API void
589 mb_artist_alias_get_script(MbArtistAlias alias, char *str, int len);
590 
591 /* }}} */
592 
593 /* {{{ MusicBrainz::User */
594 
598 MB_API void
599 mb_user_free(MbUser user);
600 
606 MB_API void
607 mb_user_get_name(MbUser user, char *str, int len);
608 
614 MB_API int
615 mb_user_get_show_nag(MbUser user);
616 
622 MB_API int
623 mb_user_get_num_types(MbUser user);
624 
630 MB_API void
631 mb_user_get_type(MbUser user, int index, char *str, int len);
632 
633 /* }}} */
634 
635 /* {{{ MusicBrainz::ArtistIncludes */
636 
637 MB_API MbArtistIncludes
639 
640 MB_API void
641 mb_artist_includes_free(MbArtistIncludes inc);
642 
643 MB_API MbArtistIncludes
644 mb_artist_includes_aliases(MbArtistIncludes inc);
645 
646 MB_API MbArtistIncludes
647 mb_artist_includes_releases(MbArtistIncludes inc, const char *type);
648 
649 MB_API MbArtistIncludes
650 mb_artist_includes_va_releases(MbArtistIncludes inc, const char *type);
651 
652 MB_API MbArtistIncludes
653 mb_artist_includes_artist_relations(MbArtistIncludes inc);
654 
655 MB_API MbArtistIncludes
656 mb_artist_includes_release_relations(MbArtistIncludes inc);
657 
658 MB_API MbArtistIncludes
659 mb_artist_includes_track_relations(MbArtistIncludes inc);
660 
661 MB_API MbArtistIncludes
662 mb_artist_includes_url_relations(MbArtistIncludes inc);
663 
664 MB_API MbArtistIncludes
665 mb_artist_includes_release_events(MbArtistIncludes inc);
666 
667 /* }}} */
668 
669 /* {{{ MusicBrainz::ReleaseIncludes */
670 
671 MB_API MbReleaseIncludes
673 
674 MB_API void
675 mb_release_includes_free(MbReleaseIncludes inc);
676 
677 MB_API MbReleaseIncludes
678 mb_release_includes_artist(MbReleaseIncludes inc);
679 
680 MB_API MbReleaseIncludes
681 mb_release_includes_counts(MbReleaseIncludes inc);
682 
683 MB_API MbReleaseIncludes
684 mb_release_includes_release_events(MbReleaseIncludes inc);
685 
686 MB_API MbReleaseIncludes
687 mb_release_includes_discs(MbReleaseIncludes inc);
688 
689 MB_API MbReleaseIncludes
690 mb_release_includes_tracks(MbReleaseIncludes inc);
691 
692 MB_API MbReleaseIncludes
693 mb_release_includes_artist_relations(MbReleaseIncludes inc);
694 
695 MB_API MbReleaseIncludes
696 mb_release_includes_release_relations(MbReleaseIncludes inc);
697 
698 MB_API MbReleaseIncludes
699 mb_release_includes_track_relations(MbReleaseIncludes inc);
700 
701 MB_API MbReleaseIncludes
702 mb_release_includes_url_relations(MbReleaseIncludes inc);
703 
704 /* }}} */
705 
706 /* {{{ MusicBrainz::TrackIncludes */
707 
708 MB_API MbTrackIncludes
710 
711 MB_API void
712 mb_track_includes_free(MbArtistIncludes inc);
713 
714 MB_API MbTrackIncludes
715 mb_track_includes_artist(MbArtistIncludes inc);
716 
717 MB_API MbTrackIncludes
718 mb_track_includes_releases(MbArtistIncludes inc);
719 
720 MB_API MbTrackIncludes
721 mb_track_includes_puids(MbArtistIncludes inc);
722 
723 MB_API MbTrackIncludes
724 mb_track_includes_artist_relations(MbArtistIncludes inc);
725 
726 MB_API MbTrackIncludes
727 mb_track_includes_release_relations(MbTrackIncludes inc);
728 
729 MB_API MbTrackIncludes
730 mb_track_includes_track_relations(MbTrackIncludes inc);
731 
732 MB_API MbTrackIncludes
733 mb_track_includes_url_relations(MbTrackIncludes inc);
734 
735 /* }}} */
736 
737 /* {{{ MusicBrainz::MbArtistFilter */
738 
739 MB_API MbArtistFilter
741 
742 MB_API void
743 mb_artist_filter_free(MbArtistFilter flt);
744 
745 MB_API MbArtistFilter
746 mb_artist_filter_name(MbArtistFilter flt, const char *value);
747 
748 MB_API MbArtistFilter
749 mb_artist_filter_limit(MbArtistFilter flt, int value);
750 
751 /* }}} */
752 
753 /* {{{ MusicBrainz::MbReleaseFilter */
754 
755 MB_API MbReleaseFilter
757 
758 MB_API void
759 mb_release_filter_free(MbReleaseFilter flt);
760 
761 MB_API MbReleaseFilter
762 mb_release_filter_title(MbReleaseFilter flt, const char *value);
763 
764 MB_API MbReleaseFilter
765 mb_release_filter_disc_id(MbReleaseFilter flt, const char *value);
766 
767 MB_API MbReleaseFilter
768 mb_release_filter_release_type(MbReleaseFilter flt, const char *value);
769 
770 MB_API MbReleaseFilter
771 mb_release_filter_artist_name(MbReleaseFilter flt, const char *value);
772 
773 MB_API MbReleaseFilter
774 mb_release_filter_artist_id(MbReleaseFilter flt, const char *value);
775 
776 MB_API MbReleaseFilter
777 mb_release_filter_limit(MbReleaseFilter flt, int value);
778 
779 /* }}} */
780 
781 /* {{{ MusicBrainz::MbTrackFilter */
782 
783 MB_API MbTrackFilter
785 
786 MB_API void
787 mb_track_filter_free(MbTrackFilter flt);
788 
789 MB_API MbTrackFilter
790 mb_track_filter_title(MbTrackFilter flt, const char *value);
791 
792 MB_API MbTrackFilter
793 mb_track_filter_artist_name(MbTrackFilter flt, const char *value);
794 
795 MB_API MbTrackFilter
796 mb_track_filter_artist_id(MbTrackFilter flt, const char *value);
797 
798 MB_API MbTrackFilter
799 mb_track_filter_release_title(MbTrackFilter flt, const char *value);
800 
801 MB_API MbTrackFilter
802 mb_track_filter_release_id(MbTrackFilter flt, const char *value);
803 
804 MB_API MbTrackFilter
805 mb_track_filter_duration(MbTrackFilter flt, int value);
806 
807 MB_API MbTrackFilter
808 mb_track_filter_puid(MbTrackFilter flt, const char *value);
809 
810 MB_API MbTrackFilter
811 mb_track_filter_limit(MbTrackFilter flt, int value);
812 
813 /* }}} */
814 
815 /* {{{ MusicBrainz::MbUserFilter */
816 
817 MB_API MbUserFilter
819 
820 MB_API void
821 mb_user_filter_free(MbUserFilter flt);
822 
823 MB_API MbUserFilter
824 mb_user_filter_name(MbUserFilter flt, const char *value);
825 
826 /* }}} */
827 
828 /* {{{ MusicBrainz::ArtistAlias */
829 
835 MB_API void
836 mb_release_event_get_country(MbReleaseEvent releaseEvent, char *str, int len);
837 
843 MB_API void
844 mb_release_event_get_date(MbReleaseEvent releaseEvent, char *str, int len);
845 
846 /* }}} */
847 
848 /* {{{ MusicBrainz::Relation */
849 
855 MB_API void
856 mb_relation_get_type(MbRelation relation, char *str, int len);
857 
863 MB_API void
864 mb_relation_get_target_id(MbRelation relation, char *str, int len);
865 
871 MB_API void
872 mb_relation_get_target_type(MbRelation relation, char *str, int len);
873 
879 MB_API void
880 mb_relation_get_begin_date(MbRelation relation, char *str, int len);
881 
887 MB_API void
888 mb_relation_get_end_date(MbRelation relation, char *str, int len);
889 
895 MB_API int
896 mb_relation_get_direction(MbRelation relation);
897 
903 MB_API MbEntity
904 mb_relation_get_target(MbRelation relation);
905 
911 MB_API int
912 mb_relation_get_num_attributes(MbRelation relation);
913 
919 MB_API void
920 mb_relation_get_attribute(MbRelation relation, int index, char *str, int len);
921 
922 /* }}} */
923 
924 /* {{{ MusicBrainz::Disc */
925 
931 MB_API void
932 mb_disc_get_id(MbDisc disc, char *str, int len);
933 
939 MB_API int
940 mb_disc_get_sectors(MbDisc disc);
941 
947 MB_API int
948 mb_disc_get_first_track_num(MbDisc disc);
949 
955 MB_API int
956 mb_disc_get_last_track_num(MbDisc disc);
957 
963 MB_API MbDisc
964 mb_read_disc(const char *device_name);
965 
971 MB_API void
972 mb_get_submission_url(MbDisc disc, const char *host, int port, char *str, int len);
973 
974 /* }}} */
975 
976 #ifdef __cplusplus
977 }
978 #endif
979 
980 #endif
MbTrackFilter mb_track_filter_limit(MbTrackFilter flt, int value)
MbTrackIncludes mb_track_includes_puids(MbArtistIncludes inc)
int mb_release_get_num_discs(MbRelease release)
Returns number of discs.
void mb_track_get_id(MbTrack track, char *str, int len)
Returns the track's ID.
void * MbArtistAlias
Definition: mb_c.h:35
MbUserFilter mb_user_filter_name(MbUserFilter flt, const char *value)
MbTrack mb_query_get_track_by_id(MbQuery query, const char *id, MbTrackIncludes inc)
Returns an track.
int mb_relation_get_num_attributes(MbRelation relation)
Returns number of attributes.
MbReleaseFilter mb_release_filter_artist_id(MbReleaseFilter flt, const char *value)
void * MbTrack
Definition: mb_c.h:47
void * MbReleaseFilter
Definition: mb_c.h:44
void mb_webservice_set_proxy_username(MbWebService webservice, const char *str)
void mb_query_free(MbQuery query)
Deletes the MbQuery instance.
void * MbTrackFilter
Definition: mb_c.h:48
void * MbReleaseIncludes
Definition: mb_c.h:45
MbArtistIncludes mb_artist_includes_track_relations(MbArtistIncludes inc)
MbReleaseIncludes mb_release_includes_artist_relations(MbReleaseIncludes inc)
void mb_release_free(MbRelease release)
Deletes the MbRelease instance.
void mb_user_free(MbUser user)
Deletes the MbUsers instance.
int mb_track_get_num_relations(MbTrack track)
Returns number of relations.
MbUserFilter mb_user_filter_new()
MbArtistIncludes mb_artist_includes_release_relations(MbArtistIncludes inc)
MbTrackIncludes mb_track_includes_releases(MbArtistIncludes inc)
void mb_user_get_name(MbUser user, char *str, int len)
Returns the user name.
MbRelation mb_release_get_relation(MbRelease release, int index)
Returns a relation specified by index.
void mb_artist_alias_get_value(MbArtistAlias alias, char *str, int len)
Returns the alias.
void mb_artist_get_begin_date(MbArtist artist, char *str, int len)
Returns the birth/foundation date.
MbArtist mb_track_get_artist(MbTrack track)
Returns the artist.
void mb_artist_get_disambiguation(MbArtist artist, char *str, int len)
Returns the disambiguation attribute.
void mb_webservice_set_proxy_port(MbWebService webservice, int port)
MbArtist mb_query_get_artist_by_id(MbQuery query, const char *id, MbArtistIncludes inc)
Returns an artist.
MbArtistFilter mb_artist_filter_name(MbArtistFilter flt, const char *value)
void * MbArtist
Definition: mb_c.h:34
MbArtistFilter mb_artist_filter_new()
MbArtistIncludes mb_artist_includes_aliases(MbArtistIncludes inc)
MbArtistIncludes mb_artist_includes_new()
void mb_webservice_set_realm(MbWebService webservice, const char *str)
void mb_disc_get_id(MbDisc disc, char *str, int len)
Returns the MusicBrainz DiscID.
void mb_release_filter_free(MbReleaseFilter flt)
void mb_artist_includes_free(MbArtistIncludes inc)
MbArtistIncludes mb_artist_includes_releases(MbArtistIncludes inc, const char *type)
void * MbEntity
Definition: mb_c.h:39
void mb_track_includes_free(MbArtistIncludes inc)
void * MbRelation
Definition: mb_c.h:41
void * MbArtistIncludes
Definition: mb_c.h:37
void * MbDisc
Definition: mb_c.h:38
MbArtistIncludes mb_artist_includes_va_releases(MbArtistIncludes inc, const char *type)
MbReleaseFilter mb_release_filter_title(MbReleaseFilter flt, const char *value)
void mb_track_free(MbTrack track)
Deletes the MbTrack instance.
MbRelease mb_result_list_get_release(MbResultList list, int index)
void mb_relation_get_begin_date(MbRelation relation, char *str, int len)
Returns the begin date.
MbArtistFilter mb_artist_filter_limit(MbArtistFilter flt, int value)
MbReleaseIncludes mb_release_includes_release_events(MbReleaseIncludes inc)
void mb_relation_get_end_date(MbRelation relation, char *str, int len)
Returns the end date.
void mb_artist_filter_free(MbArtistFilter flt)
MbReleaseFilter mb_release_filter_limit(MbReleaseFilter flt, int value)
MbTrackFilter mb_track_filter_title(MbTrackFilter flt, const char *value)
void mb_relation_get_type(MbRelation relation, char *str, int len)
Returns this relation's type.
int mb_artist_get_num_relations(MbArtist artist)
Returns number of relations.
int mb_artist_get_num_releases(MbArtist artist)
Returns number of releases.
int mb_artist_get_releases_count(MbArtist artist)
Returns the number of releases on this artist.
MbArtistIncludes mb_artist_includes_release_events(MbArtistIncludes inc)
MbReleaseIncludes mb_release_includes_new()
int mb_release_get_num_release_events(MbRelease release)
Returns number of release events.
MbTrackFilter mb_track_filter_puid(MbTrackFilter flt, const char *value)
int mb_release_get_num_relations(MbRelease release)
Returns number of relations.
MbTrackIncludes mb_track_includes_track_relations(MbTrackIncludes inc)
void mb_user_filter_free(MbUserFilter flt)
int mb_release_get_num_types(MbRelease release)
Returns number of types.
MbArtistAlias mb_artist_get_alias(MbArtist artist, int index)
Returns an alias specified by index.
MbDisc mb_release_get_disc(MbRelease release, int index)
Returns a disc specified by index.
MbTrackIncludes mb_track_includes_release_relations(MbTrackIncludes inc)
int mb_release_get_tracks_count(MbRelease release)
Returns the number of tracks on this release.
void mb_artist_get_sortname(MbArtist artist, char *str, int len)
Returns the artist's sort name.
void mb_release_get_text_script(MbRelease release, char *str, int len)
Returns the script used in release and track titles.
void mb_artist_get_type(MbArtist artist, char *str, int len)
Returns the artist's type.
void mb_release_get_asin(MbRelease release, char *str, int len)
Returns the Amazon shop identifier (ASIN).
void mb_webservice_set_port(MbWebService webservice, int port)
void mb_release_get_type(MbRelease release, int index, char *str, int len)
Returns a type specified by index.
MbReleaseIncludes mb_release_includes_release_relations(MbReleaseIncludes inc)
MbResultList mb_query_get_tracks(MbQuery query, MbTrackFilter flt)
MbUser mb_query_get_user_by_name(MbQuery query, const char *name)
Returns information about a MusicBrainz user.
MbResultList mb_query_get_artists(MbQuery query, MbArtistFilter flt)
MbTrackIncludes mb_track_includes_new()
int mb_artist_get_releases_offset(MbArtist artist)
Returns the offset of the release list.
void mb_webservice_set_path_prefix(MbWebService webservice, const char *str)
void mb_artist_get_id(MbArtist artist, char *str, int len)
Returns the artist's ID.
void * MbWebService
Definition: mb_c.h:52
void * MbUser
Definition: mb_c.h:50
void mb_webservice_set_proxy_host(MbWebService webservice, const char *str)
void mb_release_includes_free(MbReleaseIncludes inc)
void mb_user_get_type(MbUser user, int index, char *str, int len)
Returns a type specified by index.
MbReleaseIncludes mb_release_includes_discs(MbReleaseIncludes inc)
MbTrackFilter mb_track_filter_artist_id(MbTrackFilter flt, const char *value)
void mb_webservice_set_proxy_password(MbWebService webservice, const char *str)
MbResultList mb_query_get_releases(MbQuery query, MbReleaseFilter flt)
void mb_webservice_free(MbWebService webservice)
Deletes the MbWebService instance.
void mb_webservice_set_password(MbWebService webservice, const char *str)
void * MbReleaseEvent
Definition: mb_c.h:43
MbRelation mb_artist_get_relation(MbArtist artist, int index)
Returns a relation specified by index.
MbReleaseIncludes mb_release_includes_artist(MbReleaseIncludes inc)
MbReleaseIncludes mb_release_includes_counts(MbReleaseIncludes inc)
MbTrackFilter mb_track_filter_duration(MbTrackFilter flt, int value)
int mb_relation_get_direction(MbRelation relation)
Returns the reading direction.
MbReleaseIncludes mb_release_includes_url_relations(MbReleaseIncludes inc)
void * MbRelease
Definition: mb_c.h:42
void mb_artist_alias_get_script(MbArtistAlias alias, char *str, int len)
Returns the alias script.
int mb_artist_get_num_aliases(MbArtist artist)
Returns number of aliases.
MbTrack mb_release_get_track(MbRelease release, int index)
Returns a track specified by index.
MbTrackFilter mb_track_filter_release_title(MbTrackFilter flt, const char *value)
MbReleaseIncludes mb_release_includes_tracks(MbReleaseIncludes inc)
void mb_relation_get_attribute(MbRelation relation, int index, char *str, int len)
Returns a attribute specified by index.
void mb_release_event_get_date(MbReleaseEvent releaseEvent, char *str, int len)
Returns the date a release took place.
MbArtist mb_result_list_get_artist(MbResultList list, int index)
int mb_disc_get_sectors(MbDisc disc)
Returns the length of the disc in sectors.
void mb_release_get_id(MbRelease release, char *str, int len)
Returns the release's ID.
int mb_disc_get_last_track_num(MbDisc disc)
Returns the number of the last track on this disc.
void * MbArtistFilter
Definition: mb_c.h:36
void mb_artist_get_end_date(MbArtist artist, char *str, int len)
Returns the death/dissolving date.
MbTrackFilter mb_track_filter_new()
MbRelease mb_artist_get_release(MbArtist artist, int index)
Returns an release specified by index.
void mb_relation_get_target_type(MbRelation relation, char *str, int len)
Returns the target's type.
MbWebService mb_webservice_new()
Creates a new instance of MbWebService.
void mb_track_filter_free(MbTrackFilter flt)
void mb_release_get_text_language(MbRelease release, char *str, int len)
Returns the language used in release and track titles.
void mb_relation_get_target_id(MbRelation relation, char *str, int len)
Returns the target's ID.
void mb_artist_get_unique_name(MbArtist artist, char *str, int len)
Returns a unique artist name (using disambiguation).
int mb_result_list_get_score(MbResultList list, int index)
MbRelation mb_track_get_relation(MbTrack track, int index)
Returns a relation specified by index.
void mb_artist_alias_get_type(MbArtistAlias alias, char *str, int len)
Returns the alias type.
int mb_track_get_duration(MbTrack track)
Returns the track's duration.
void mb_result_list_free(MbResultList list)
MbTrackIncludes mb_track_includes_artist(MbArtistIncludes inc)
int mb_release_get_num_tracks(MbRelease release)
Returns number of tracks.
int mb_disc_get_first_track_num(MbDisc disc)
Returns the number of the first track on this disc.
int mb_result_list_get_size(MbResultList list)
void mb_release_event_get_country(MbReleaseEvent releaseEvent, char *str, int len)
Returns the country a release took place.
MbReleaseFilter mb_release_filter_disc_id(MbReleaseFilter flt, const char *value)
void mb_webservice_set_host(MbWebService webservice, const char *str)
void mb_get_submission_url(MbDisc disc, const char *host, int port, char *str, int len)
Returns a URL for adding a disc to the MusicBrainz database.
MbTrackIncludes mb_track_includes_url_relations(MbTrackIncludes inc)
void * MbTrackIncludes
Definition: mb_c.h:49
MbArtist mb_release_get_artist(MbRelease release)
Returns the artist.
MbTrackFilter mb_track_filter_artist_name(MbTrackFilter flt, const char *value)
void * MbResultList
Definition: mb_c.h:46
MbDisc mb_read_disc(const char *device_name)
Reads an Audio CD in the disc drive.
void mb_artist_get_name(MbArtist artist, char *str, int len)
Returns the artist's name.
int mb_release_get_tracks_offset(MbRelease release)
Returns the offset of the track list.
int mb_user_get_num_types(MbUser user)
Returns number of types.
MbReleaseIncludes mb_release_includes_track_relations(MbReleaseIncludes inc)
MbReleaseEvent mb_release_get_release_event(MbRelease release, int index)
Returns a release event specified by index.
MbReleaseFilter mb_release_filter_artist_name(MbReleaseFilter flt, const char *value)
MbTrackFilter mb_track_filter_release_id(MbTrackFilter flt, const char *value)
void mb_webservice_set_username(MbWebService webservice, const char *str)
void mb_track_get_title(MbTrack track, char *str, int len)
Returns the track's title.
#define MB_API
Definition: defines.h:40
int mb_user_get_show_nag(MbUser user)
Returns true if a nag screen should be displayed to the user.
void mb_release_get_title(MbRelease release, char *str, int len)
Returns the release's title.
MbArtistIncludes mb_artist_includes_url_relations(MbArtistIncludes inc)
MbQuery mb_query_new(MbWebService ws, const char *client_id)
Creates a new instance of MbQuery.
void * MbQuery
Definition: mb_c.h:40
MbReleaseFilter mb_release_filter_new()
MbTrack mb_result_list_get_track(MbResultList list, int index)
MbRelease mb_query_get_release_by_id(MbQuery query, const char *id, MbReleaseIncludes inc)
Returns an release.
MbArtistIncludes mb_artist_includes_artist_relations(MbArtistIncludes inc)
void * MbUserFilter
Definition: mb_c.h:51
MbReleaseFilter mb_release_filter_release_type(MbReleaseFilter flt, const char *value)
void mb_artist_free(MbArtist artist)
Deletes the MbArtist instance.
MbEntity mb_relation_get_target(MbRelation relation)
Returns this relation's target object.
MbTrackIncludes mb_track_includes_artist_relations(MbArtistIncludes inc)