Branch update for mygnokii2002_03_17_19_29nl
[gnokii.git] / include / files / gsm-filetypes.h
1 /*
2
3   G N O K I I
4
5   A Linux/Unix toolset and driver for Nokia mobile phones.
6
7   Released under the terms of the GNU GPL, see file COPYING for more details.
8   
9   Functions to read and write common file types.
10
11 */
12
13 #include "gsm-api.h"
14 #include "gsm-calendar.h"
15 #include "gsm-ringtones.h"
16 #include "gsm-bitmaps.h"
17
18 /* ---------- Calendar file --------- */
19
20 GSM_Error GSM_ReadVCalendarFile(char *FileName, GSM_CalendarNote *cnote,
21   int *number);
22
23 int GetvCalTime(GSM_DateTime *dt, char *time);
24 int FillCalendarNote(GSM_CalendarNote *note, char *type,
25   char *text, char *time, char *alarm);
26
27 /* ----------- Text files ----------- */
28
29 int GSM_SaveTextFile(char *FileName, char *text, int mode);
30
31 /* ----------- Ringtones functions and constans ----------- */
32
33 int GetScale (char *num);
34 int GetDuration (char *num);
35
36 /* Defines the character that separates fields in rtttl files. */
37 #define RTTTL_SEP ":"
38
39 /* ----------- Ringtones files ----------- */
40
41 GSM_Error GSM_ReadBinRingtoneFile(char *FileName, GSM_BinRingtone *ringtone);
42 GSM_Error GSM_SaveBinRingtoneFile(char *FileName, GSM_BinRingtone *ringtone);
43
44 GSM_Error GSM_ReadRingtoneFile(char *FileName, GSM_Ringtone *ringtone);
45 GSM_Error GSM_SaveRingtoneFile(char *FileName, GSM_Ringtone *ringtone);
46
47 void saverttl(FILE *file, GSM_Ringtone *ringtone);
48 void saveott(FILE *file, GSM_Ringtone *ringtone);
49 void savemid(FILE* file, GSM_Ringtone *ringtone);
50
51 GSM_Error loadrttl(FILE *file, GSM_Ringtone *ringtone);
52 GSM_Error loadott(FILE *file, GSM_Ringtone *ringtone);
53 GSM_Error loadcommunicator(FILE *file, GSM_Ringtone *ringtone);
54
55 /* ----------- Bitmap files ----------- */
56
57 GSM_Error GSM_ReadBitmapFile(char *FileName, GSM_Bitmap *bitmap);
58 GSM_Error GSM_SaveBitmapFile(char *FileName, GSM_Bitmap *bitmap);
59
60 void savenol(FILE *file, GSM_Bitmap *bitmap);
61 void savengg(FILE *file, GSM_Bitmap *bitmap);
62 void savensl(FILE *file, GSM_Bitmap *bitmap);
63 void savenlm(FILE *file, GSM_Bitmap *bitmap);
64 void saveota(FILE *file, GSM_Bitmap *bitmap);
65 void savebmp(FILE *file, GSM_Bitmap *bitmap);
66 void savexpm(FILE *file, GSM_Bitmap *bitmap);
67
68 GSM_Error loadngg(FILE *file, GSM_Bitmap *bitmap);
69 GSM_Error loadnol(FILE *file, GSM_Bitmap *bitmap);
70 GSM_Error loadnsl(FILE *file, GSM_Bitmap *bitmap);
71 GSM_Error loadnlm(FILE *file, GSM_Bitmap *bitmap);
72 GSM_Error loadota(FILE *file, GSM_Bitmap *bitmap);
73 GSM_Error loadbmp(FILE *file, GSM_Bitmap *bitmap);
74
75 #ifdef XPM
76   GSM_Error loadxpm(char *filename, GSM_Bitmap *bitmap);
77 #endif
78
79 /* ----------- Backup files ----------- */
80
81 GSM_Error GSM_ReadBackupFile(char *FileName, GSM_Backup *backup);
82 GSM_Error GSM_SaveBackupFile(char *FileName, GSM_Backup *backup);
83
84 void savelmb(FILE *file, GSM_Backup *backup);
85
86 GSM_Error loadlmb(FILE *file, GSM_Backup *backup);
87
88 typedef enum {
89   None=0,
90   NOL,
91   NGG,
92   NSL,
93   NLM,
94   BMP,
95   OTA,
96   XPMF,
97   RTTL,
98   OTT,
99   MIDI,
100   COMMUNICATOR,
101   LMB
102 } GSM_Filetypes;