Diffstat (limited to 'gammu/emb/common/service/gsmlogo.h') (more/less context) (show whitespace changes)
-rw-r--r-- | gammu/emb/common/service/gsmlogo.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/gammu/emb/common/service/gsmlogo.h b/gammu/emb/common/service/gsmlogo.h index b1b579d..6c6e2d8 100644 --- a/gammu/emb/common/service/gsmlogo.h +++ b/gammu/emb/common/service/gsmlogo.h @@ -1,72 +1,90 @@ /* (c) 2002-2004 by Marcin Wiacek */ #ifndef __gsm_bitmaps_h #define __gsm_bitmaps_h #include "../gsmcomon.h" +typedef enum { + PICTURE_BMP = 1, + PICTURE_GIF, + PICTURE_JPG, + PICTURE_ICN, + PICTURE_PNG +} GSM_BinaryPicture_Types; + +typedef struct { + GSM_BinaryPicture_Types Type; + unsigned char *Buffer; + int Length; +} GSM_BinaryPicture; + /** * Enum to handle all possible bitmaps, which are not saved in various filesystems. */ typedef enum { GSM_None = 1, /** * ID of static file in filesystem displayed during startup */ GSM_ColourStartupLogo_ID, /** * Static mono bitmap/ID of animated mono bitmap displayed during startup */ GSM_StartupLogo, /** * ID of static file in filesystem displayed instead of operator name */ GSM_ColourOperatorLogo_ID, /** * Mono bitmap displayed instead of operator name */ GSM_OperatorLogo, /** * ID of static file in filesystem displayed as wallpaper */ GSM_ColourWallPaper_ID, /** * Mono bitmap assigned to caller group */ GSM_CallerGroupLogo, /** * Text displayed during startup, which can't be removed from phone menu */ GSM_DealerNote_Text, /** * Text displayed during startup */ GSM_WelcomeNote_Text, /** * Image defined in Smart Messaging specification */ - GSM_PictureImage + GSM_PictureImage, + /** + * Binary picture (BMP, GIF, etc.) + */ + GSM_PictureBinary } GSM_Bitmap_Types; #define GSM_BITMAP_SIZE (65+7)/8*96 #define GSM_BITMAP_TEXT_LENGTH 128 /** * Structure for all possible bitmaps, which are not saved in various filesystems */ typedef struct { /** * For all: bitmap type */ GSM_Bitmap_Types Type; /** * For caller group logos: number of group * For startup logos: number of animated bitmap */ unsigned char Location; /** * For dealer/welcome note text: text * For caller group logo: name of group * For picture images: text assigned to it */ unsigned char Text[2 * (GSM_BITMAP_TEXT_LENGTH + 1)]; @@ -94,48 +112,56 @@ typedef struct { /** * For mono bitmaps: body of bitmap */ unsigned char BitmapPoints[GSM_BITMAP_SIZE]; /** * For mono bitmaps: height specified in pixels */ unsigned char BitmapHeight; /** * For mono bitmaps: width specified in pixels */ unsigned char BitmapWidth; /** * For operator logos: Network operator code */ char NetworkCode[7]; /** * For picture images: number of sender */ unsigned char Sender[2 * (GSM_MAX_NUMBER_LENGTH + 1)]; /** * For colour bitmaps: ID */ unsigned char ID; + /** + * For binary pictures (GIF, BMP, etc.): frame and length + */ + GSM_BinaryPicture BinaryPic; + /** + * Bitmap name + */ + char *Name; } GSM_Bitmap; #define MAX_MULTI_BITMAP 6 /** * Structure to handle more than one bitmap */ typedef struct { /** * Number of bitmaps */ unsigned char Number; /** * All bitmaps */ GSM_Bitmap Bitmap[MAX_MULTI_BITMAP]; } GSM_MultiBitmap; typedef enum { GSM_NokiaStartupLogo = 1, /*size 84*48*/ GSM_NokiaOperatorLogo, /*size 72*14*/ GSM_Nokia7110OperatorLogo, /*size 78*21*/ GSM_Nokia6510OperatorLogo, /*size 78*21*/ GSM_NokiaCallerLogo, /*size 72*14*/ |