--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/syncmlfw/common/wbxml/inc/syncml/smldef.h Thu Dec 17 09:07:52 2009 +0200
@@ -0,0 +1,144 @@
+/*
+* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Definitions for SyncML toolkit types.
+*
+*/
+
+
+
+#ifndef __SMLDEF_H__
+#define __SMLDEF_H__
+
+/**
+ * ==================================
+ * Basic data types
+ * ==================================
+ **/
+typedef short Short_t; // short integer, 16 Bytes
+typedef long Long_t; // long integer, 32 Bytes
+typedef char* String_t; // String pointer,
+typedef unsigned char Byte_t; // a single byte
+typedef Byte_t Boolean_t; // a boolean
+
+typedef int Ret_t; // Return Type of API Commands
+typedef Long_t Length_t; // System dependent string length
+typedef Short_t MemHandle_t; // Memory object Handle
+typedef unsigned char *MemPtr_t; // Memory object Pointer
+typedef void *VoidPtr_t; // Void Pointer
+typedef Long_t MemSize_t; // System dependent memory object size
+typedef unsigned char MemByte_t; // Memory element
+typedef unsigned int Flag_t; // A generic flag type. This type is used to
+ // declare variables in structures wherever
+ // flags are used.
+
+/**
+ * ==================================
+ * Definitions used in the SyncML API
+ * ==================================
+ **/
+
+/**
+ * Application callback function displaying output strings to the user
+ **/
+typedef void (*smlPrintFunc) (String_t outputString);
+
+/**
+ * structure describing the options and setting of this syncml process
+ **/
+typedef struct sml_options_s {
+ smlPrintFunc defaultPrintFunc; // default application callback for displaying strings,
+ MemSize_t maxWorkspaceAvailMem; // size which all workspaces in total MUST not exceed
+} *SmlOptionsPtr_t, SmlOptions_t;
+
+/**
+ * Reference of an instance
+ **/
+typedef MemHandle_t InstanceID_t; // Handle, used as a unique ID of
+ // an synchronization instance
+/**
+ * Type of used encoding
+ **/
+typedef enum {
+ SML_UNDEF = 0,
+ SML_WBXML,
+ SML_XML
+} SmlEncoding_t;
+
+/**
+ * structure describing the options of an instance,
+ **/
+typedef struct sml_instance_options_s {
+ SmlEncoding_t encoding; // Used encoding type,
+ MemSize_t workspaceSize; // size of the workspace to allocate
+ String_t workspaceName; // name of the workspace
+} *SmlInstanceOptionsPtr_t, SmlInstanceOptions_t;
+
+/**
+ * Processing modes
+ **/
+typedef enum {
+ SML_DO_NOTHING = 0,
+ SML_FIRST_COMMAND,
+ SML_NEXT_COMMAND,
+ SML_NEXT_MESSAGE,
+ SML_ALL_COMMANDS
+} SmlProcessMode_t;
+
+/**
+ * Requested buffer pointer position
+ **/
+typedef enum {
+ SML_FIRST_DATA_ITEM = 0,
+ SML_FIRST_FREE_ITEM
+} SmlBufPtrPos_t;
+
+/**
+ * SyncML Protocol Management and Command Elements (PE)
+ **/
+typedef enum {
+ SML_PE_UNDEF = 0,
+ SML_PE_ERROR,
+ SML_PE_ADD,
+ SML_PE_ALERT,
+ SML_PE_ATOMIC_START,
+ SML_PE_ATOMIC_END,
+ SML_PE_COPY,
+ SML_PE_DELETE,
+ SML_PE_EXEC,
+ SML_PE_GET,
+ SML_PE_MAP,
+ SML_PE_MOVE, // 1.2 CHANGES: Move added
+ SML_PE_PUT,
+ SML_PE_RESULTS,
+ SML_PE_SEARCH,
+ SML_PE_SEQUENCE_START,
+ SML_PE_SEQUENCE_END,
+ SML_PE_STATUS,
+ SML_PE_SYNC_START,
+ SML_PE_SYNC_END,
+ SML_PE_REPLACE,
+ SML_PE_HEADER,
+ SML_PE_PUT_GET,
+ SML_PE_CMD_GROUP,
+ SML_PE_GENERIC,
+ SML_PE_FINAL
+} SmlProtoElement_t;
+
+#define SML_PE_SIZE_SENT (1<<0)
+#define SML_PE_META_CREATED_BY_GENERATOR (1<<1)
+#define SML_PE_SIZE_CREATED_BY_GENERATOR (1<<2)
+
+
+
+#endif // __SMLDEF_H__