summaryrefslogtreecommitdiff
path: root/libpiano/piano.h
diff options
context:
space:
mode:
Diffstat (limited to 'libpiano/piano.h')
-rw-r--r--libpiano/piano.h166
1 files changed, 0 insertions, 166 deletions
diff --git a/libpiano/piano.h b/libpiano/piano.h
deleted file mode 100644
index b832b69..0000000
--- a/libpiano/piano.h
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
-Copyright (c) 2008 Lars-Dominik Braun
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-#ifndef _PIANO_H
-#define _PIANO_H
-
-/* this is our public API; don't expect this api to be stable, as long
- * pandora does not provide a stable api
- * all strings _must_ be utf-8 encoded. i won't care, but pandora does. so
- * be nice and check the encoding of your strings. thanks :) */
-
-#include <curl/curl.h>
-
-struct PianoUserInfo {
- unsigned int zipcode;
- /* disabled: billingFrequency */
- signed hasExplicitContentFilter;
- char *webAuthToken;
- /* disabled: alertCode */
- /* disabled: seenQuickMixPanel */
- unsigned short birthYear;
- char *bookmarkUrl;
- char *listenerState; /* FIXME: use enum? */
- /* disabled: adCookieValue */
- /* disabled: gender */
- /* disabled: emailOptIn */
- /* disabled: autoRenew */
- char *username;
- char *listenerId;
- char *authToken;
- char *webName;
-};
-
-typedef struct PianoUserInfo PianoUserInfo_t;
-
-struct PianoStation {
- signed isCreator;
- /* disabled: originalStationId */
- char **genre;
- unsigned int originalCreatorId;
- /* disabled: initialSeed */
- /* disabled: isNew */
- /* disabled: transformType */
- char *idToken;
- signed isQuickMix;
- char *name;
- char *id;
- struct PianoStation *next;
-};
-typedef struct PianoStation PianoStation_t;
-
-enum PianoSongRating {PIANO_RATE_BAN, PIANO_RATE_LOVE, PIANO_RATE_NONE};
-typedef enum PianoSongRating PianoSongRating_t;
-
-struct PianoSong {
- char *artist;
- char **genre;
- char *matchingSeed;
- /* disabled: composerName */
- /* disabled: isSeed */
- /* disabled: artistFansURL */
- /* disabled: songExplorerUrl */
- float fileGain;
- /* disabled: songDetailURL */
- /* disabled: albumDetailURL */
- char *webId;
- /* disabled: musicComUrl */
- /* disabled: fanExplorerUrl */
- PianoSongRating_t rating;
- /* disabled: artistExplorerUrl */
- /* disabled: artRadio */
- char *audioEncoding; /* FIXME: should be enum: mp3 or aacplus */
- char *stationId;
- char *album;
- char *artistMusicId;
- char *userSeed;
- /* disabled: albumExplorerUrl */
- /* disabled: amazonUrl */
- char *audioUrl;
- signed onTour;
- /* disabled: itunesUrl */
- char *musicId;
- char *title;
- char *focusTraitId;
- char *identity;
- int score; /* only used for search results */
- struct PianoSong *next;
-};
-
-typedef struct PianoSong PianoSong_t;
-
-/* currently only used for search results */
-struct PianoArtist {
- /* disabled: iscomposer */
- /* disabled: likelymatch */
- char *name;
- char *musicId;
- int score;
- struct PianoArtist *next;
-};
-
-typedef struct PianoArtist PianoArtist_t;
-
-struct PianoHandle {
- CURL *curlHandle;
- char routeId[9];
- PianoUserInfo_t user;
- /* linked lists */
- PianoStation_t *stations;
- PianoSong_t *playlist;
-};
-
-typedef struct PianoHandle PianoHandle_t;
-
-struct PianoSearchResult {
- PianoSong_t *songs;
- PianoArtist_t *artists;
-};
-
-typedef struct PianoSearchResult PianoSearchResult_t;
-
-/* FIXME: more error types (http failed, e.g.) later */
-enum PianoReturn {PIANO_RET_OK, PIANO_RET_ERR, PIANO_RET_XML_INVALID,
- PIANO_RET_AUTH_TOKEN_INVALID, PIANO_RET_AUTH_USER_PASSWORD_INVALID};
-typedef enum PianoReturn PianoReturn_t;
-
-void PianoInit (PianoHandle_t *);
-void PianoDestroy (PianoHandle_t *);
-void PianoDestroyPlaylist (PianoHandle_t *ph);
-void PianoDestroySearchResult (PianoSearchResult_t *searchResult);
-void PianoDestroyStation (PianoStation_t *station);
-void PianoDestroyStations (PianoHandle_t *ph);
-PianoReturn_t PianoConnect (PianoHandle_t *, char *, char *);
-
-PianoReturn_t PianoGetStations (PianoHandle_t *ph);
-void PianoGetPlaylist (PianoHandle_t *ph, char *stationId);
-
-PianoReturn_t PianoRateTrack (PianoHandle_t *ph, PianoStation_t *station,
- PianoSong_t *song, PianoSongRating_t rating);
-PianoReturn_t PianoRenameStation (PianoHandle_t *ph, PianoStation_t *station,
- char *newName);
-PianoReturn_t PianoDeleteStation (PianoHandle_t *ph, PianoStation_t *station);
-void PianoSearchMusic (PianoHandle_t *ph, char *searchStr,
- PianoSearchResult_t *searchResult);
-void PianoCreateStation (PianoHandle_t *ph, char *musicId);
-
-#endif /* _PIANO_H */