#include "common.h"
#include <string.h>
#define PL_CREATE 1
#define PL_DELETE 2
#define PL_RENAME 3
static void usage(void)
{
fprintf(stderr, "usage: pl [ -D debuglvl ] -d name\n" \
"pl [ -D debuglvl ] -r oldname newname\n" \
"pl [ -D debuglvl ] -c name trackid < trackid2 trackid3 ... >\n");
}
{
unsigned int i = 1;
fprintf(fp,
"Playlist: %s\n", pl->
name);
fprintf(fp,
"ID: %u\n", pl->
plid);
fprintf(fp,
"Tracks: %u\n", pl->
ntracks);
fprintf(fp,
"State: %d\n", pl->
_state);
fprintf(fp,
"%5u - track ID %u\n", i, track->
trackid);
i++;
}
}
int main (int argc, char **argv)
{
int i, n, opt, mode, debug;
char *name, *newname;
extern int optind;
extern char *optarg;
char *endptr;
char *lang;
debug= 0;
mode= 0;
name= NULL;
newname = NULL;
while ( (opt= getopt(argc, argv, "d:r:c:")) != -1 ) {
switch (opt) {
case 'c':
mode= PL_CREATE;
break;
case 'd':
mode= PL_DELETE;
break;
case 'r':
mode= PL_RENAME;
break;
case 'D':
debug= atoi(optarg);
break;
case '?':
default:
usage();
return 1;
}
name= optarg;
}
argc-= optind;
argv+= optind;
lang = getenv("LANG");
if (lang != NULL) {
if (strlen(lang) > 5) {
if (!strcmp(&lang[strlen(lang)-5], "UTF-8")) {
}
}
}
if ( ! mode ) {
usage();
return 1;
}
playlist = NULL;
if ( mode == PL_CREATE ) {
if ( playlist == NULL ) {
perror("NJB_Playlist_New");
return 1;
}
perror("NJB_Playlist_Set_Name");
} else {
for (i= 0; i< argc; i++) {
u_int32_t trid= strtoul(argv[i], &endptr, 10);
if ( *endptr != '\0' ) {
fprintf(stderr, "invalid track id %s",
argv[i]);
return 1;
}
if ( pl_track == NULL ) {
perror("NJB_Playlist_Track_New");
return 1;
}
NJB_PL_END);
}
playlist_dump(playlist, stdout);
}
} else if ( mode == PL_RENAME ) {
newname= argv[0];
}
fprintf(stderr, "could not locate any jukeboxes\n");
return 1;
}
if ( n == 0 ) {
fprintf(stderr, "no NJB devices found\n");
return 0;
}
njb = njbs;
return 1;
}
return 1;
}
if ( mode == PL_CREATE ) {
} else {
int status = 0;
int repeat= 1;
while ( repeat ) {
if ( playlist == NULL ) {
repeat= 0;
} else {
repeat = strcmp(name, playlist->
name);
if ( repeat )
}
}
if ( playlist == NULL ) {
} else {
if ( mode == PL_DELETE ) {
} else {
status = -1;
} else {
playlist);
}
}
}
}
return 0;
}
int NJB_Capture(njb_t *njb)
Definition: procedure.c:223
void NJB_Close(njb_t *njb)
Definition: procedure.c:184
int NJB_Discover(njb_t *njbs, int limit, int *n)
Definition: procedure.c:108
int NJB_Release(njb_t *njb)
Definition: procedure.c:266
int NJB_Open(njb_t *njb)
Definition: procedure.c:130
void NJB_Set_Unicode(int unicode_flag)
Definition: procedure.c:2833
void NJB_Set_Debug(int debug_flags)
Definition: procedure.c:2819
void NJB_Error_Dump(njb_t *njb, FILE *fp)
Definition: njb_error.c:418
njb_playlist_track_t * NJB_Playlist_Track_New(u_int32_t trackid)
Definition: playlist.c:433
void NJB_Playlist_Addtrack(njb_playlist_t *pl, njb_playlist_track_t *track, unsigned int pos)
Definition: playlist.c:137
void NJB_Reset_Get_Playlist(njb_t *njb)
Definition: procedure.c:556
njb_playlist_track_t * NJB_Playlist_Gettrack(njb_playlist_t *pl)
Definition: playlist.c:377
int NJB_Playlist_Set_Name(njb_playlist_t *pl, const char *name)
Definition: playlist.c:404
void NJB_Playlist_Reset_Gettrack(njb_playlist_t *pl)
Definition: playlist.c:354
njb_playlist_t * NJB_Get_Playlist(njb_t *njb)
Definition: procedure.c:592
njb_playlist_t * NJB_Playlist_New(void)
Definition: playlist.c:27
int NJB_Update_Playlist(njb_t *njb, njb_playlist_t *pl)
Definition: procedure.c:2206
void NJB_Playlist_Destroy(njb_playlist_t *pl)
Definition: playlist.c:323
int NJB_Delete_Playlist(njb_t *njb, u_int32_t plid)
Definition: procedure.c:2167
#define NJB_UC_UTF8
Definition: libnjb.h:147
#define NJB_MAX_DEVICES
Definition: libnjb.h:60
u_int32_t ntracks
Definition: libnjb.h:254
char * name
Definition: libnjb.h:248
int _state
Definition: libnjb.h:249
u_int32_t plid
Definition: libnjb.h:255
u_int32_t trackid
Definition: libnjb.h:238