aboutsummaryrefslogtreecommitdiff
path: root/moc_library.h
blob: 60a9c098ff81c69dcb17db54e47ff7356d694f5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>  //Header file for sleep(). man 3 sleep for details.
#include <errno.h>
 
#include <pthread.h>
#include <sys/socket.h>
#include <sys/un.h>


/* Flags for the info decoder function. */
enum tags_select
{
  TAGS_COMMENTS	= 0x01, /* artist, title, etc. */
  TAGS_TIME	= 0x02 /* time of the file. */
};

enum moc_state {
  STOPPED,
  PLAYING,
  PAUSED
};

enum moc_status {
  INITIALIZING,
  CONNECTED,
  FAILED_TO_CONNECT,
  ERROR
};

struct moc { 
  pthread_mutex_t lock;
  enum moc_status status;
  enum moc_state state;

  char *filename;
  char *title;
  char *album;
  char *artist;
  int track;
  int time;
  int filled;
};

extern const char * moc_str_state(enum moc_state s);
extern struct moc * moc_init();