--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/syncmlfw/common/wbxml/inc/devinf/smldevinfdtd.h Thu Dec 17 09:07:52 2009 +0200
@@ -0,0 +1,348 @@
+/*
+* 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: Command structs for device information DTD.
+*
+*/
+
+
+#ifndef __SML_DEVINFDTD_H__
+#define __SML_DEVINFDTD_H__
+
+//************************************************************************
+//* Includes
+//************************************************************************
+#include "smldef.h"
+#include "smldtd.h"
+#include "xmlelement.h"
+
+//************************************************************************
+//* Flags
+//************************************************************************
+#define SmlUTC_f (1<<0)
+#define SmlSupportNumberOfChanges_f (1<<1)
+#define SmlSupportLargeObjects_f (1<<2)
+
+//************************************************************************
+//* Definitions
+//************************************************************************
+
+typedef struct sml_devinf_xmit_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t cttype;
+ SmlPcdataPtr_t verct;
+
+public:
+ IMPORT_C sml_devinf_xmit_s();
+ IMPORT_C ~sml_devinf_xmit_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfXmitPtr_t, SmlDevInfXmit_t;
+
+typedef struct sml_devinf_xmitlist_s : public CBase
+ {
+public:
+ SmlDevInfXmitPtr_t data;
+ struct sml_devinf_xmitlist_s *next;
+
+public:
+ IMPORT_C sml_devinf_xmitlist_s();
+ IMPORT_C ~sml_devinf_xmitlist_s();
+ } *SmlDevInfXmitListPtr_t, SmlDevInfXmitList_t;
+
+typedef struct sml_devinf_ext_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t xnam;
+ SmlPcdataListPtr_t xval; /* optional */
+
+public:
+ IMPORT_C sml_devinf_ext_s();
+ IMPORT_C ~sml_devinf_ext_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfExtPtr_t, SmlDevInfExt_t;
+
+typedef struct sml_devinf_extlist_s : public CBase
+ {
+public:
+ SmlDevInfExtPtr_t data;
+ struct sml_devinf_extlist_s *next;
+
+public:
+ IMPORT_C sml_devinf_extlist_s();
+ IMPORT_C ~sml_devinf_extlist_s();
+ } *SmlDevInfExtListPtr_t, SmlDevInfExtList_t;
+
+// 1.2 CHANGES: new element FilterCap
+typedef struct sml_devinf_filtercap_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t cttype;
+ SmlPcdataPtr_t verct;
+ SmlPcdataListPtr_t filterkeyword; /* optional */
+ SmlPcdataListPtr_t propname; /* optional */
+
+public:
+ IMPORT_C sml_devinf_filtercap_s();
+ IMPORT_C ~sml_devinf_filtercap_s();
+ CXMLElement * BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfFilterCapPtr_t, SmlDevInfFilterCap_t;
+
+typedef struct sml_devinf_filtercaplist_s : public CBase
+ {
+public:
+ SmlDevInfFilterCapPtr_t data;
+ struct sml_devinf_filtercaplist_s *next;
+
+public:
+ IMPORT_C sml_devinf_filtercaplist_s();
+ IMPORT_C ~sml_devinf_filtercaplist_s();
+ } *SmlDevInfFilterCapListPtr_t, SmlDevInfFilterCapList_t;
+// Changes end
+
+typedef struct sml_devinf_synccap_s : public CXMLElement
+ {
+public:
+ SmlPcdataListPtr_t synctype;
+
+public:
+ IMPORT_C sml_devinf_synccap_s();
+ IMPORT_C ~sml_devinf_synccap_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfSyncCapPtr_t, SmlDevInfSyncCap_t;
+
+typedef struct sml_devinf_dsmem_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t shared; /* optional, flag */
+ SmlPcdataPtr_t maxmem; /* optional */
+ SmlPcdataPtr_t maxid; /* optional */
+
+public:
+ IMPORT_C sml_devinf_dsmem_s();
+ IMPORT_C ~sml_devinf_dsmem_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfDSMemPtr_t, SmlDevInfDSMem_t;
+
+// 1.2 CHANGES: new elements PropParam, Property
+typedef struct sml_devinf_propparam_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t paramname;
+ SmlPcdataPtr_t datatype; /* optional */
+ SmlPcdataListPtr_t valenum; /*optional*/
+ SmlPcdataPtr_t displayname; /*optional*/
+
+public:
+ IMPORT_C sml_devinf_propparam_s();
+ IMPORT_C ~sml_devinf_propparam_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfPropParamPtr_t, SmlDevInfPropParam_t;
+
+typedef struct sml_devinf_propparamlist_s : public CBase
+ {
+public:
+ SmlDevInfPropParamPtr_t data;
+ struct sml_devinf_propparamlist_s *next;
+
+public:
+ IMPORT_C sml_devinf_propparamlist_s();
+ IMPORT_C ~sml_devinf_propparamlist_s();
+ } *SmlDevInfPropParamListPtr_t, SmlDevInfPropParamList_t;
+
+typedef struct sml_devinf_property_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t propname;
+ SmlPcdataPtr_t datatype; /* optional */
+ SmlPcdataPtr_t maxoccur; /* optional */
+ SmlPcdataPtr_t maxsize; /* optional */
+ SmlPcdataPtr_t notruncate; /* optional */
+ SmlPcdataListPtr_t valenum; /* optional */
+ SmlPcdataPtr_t displayname; /* optional */
+ SmlDevInfPropParamListPtr_t propparam; /* optional */
+
+public:
+ IMPORT_C sml_devinf_property_s();
+ IMPORT_C ~sml_devinf_property_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfPropertyPtr_t, SmlDevInfProperty_t;
+// Changes end
+
+typedef struct sml_devinf_ctdata_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t name;
+ SmlPcdataPtr_t dname; /* optional, display name */
+ SmlPcdataListPtr_t valenum;
+ SmlPcdataPtr_t datatype;
+ SmlPcdataPtr_t size;
+
+public:
+ IMPORT_C sml_devinf_ctdata_s();
+ IMPORT_C ~sml_devinf_ctdata_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ void SetDataL( const TDesC8& aData );
+ } *SmlDevInfCTDataPtr_t, SmlDevInfCTData_t;
+
+typedef struct sml_devinf_ctdatalist_s : public CBase
+ {
+public:
+ SmlDevInfCTDataPtr_t data;
+ struct sml_devinf_ctdatalist_s *next;
+
+public:
+ IMPORT_C sml_devinf_ctdatalist_s();
+ IMPORT_C ~sml_devinf_ctdatalist_s();
+ } *SmlDevInfCTDataListPtr_t, SmlDevInfCTDataList_t;
+
+typedef struct sml_devinf_ctdataprop_s : public CXMLElement
+ {
+public:
+ SmlDevInfCTDataPtr_t prop;
+ SmlDevInfCTDataListPtr_t param;
+
+public:
+ IMPORT_C sml_devinf_ctdataprop_s();
+ IMPORT_C ~sml_devinf_ctdataprop_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ void SetDataL( const TDesC8& aData );
+ } *SmlDevInfCTDataPropPtr_t, SmlDevInfCTDataProp_t;
+
+typedef struct sml_devinf_propertylist_s : public CBase
+ {
+public:
+ SmlDevInfPropertyPtr_t data;
+ struct sml_devinf_propertylist_s *next;
+
+public:
+ IMPORT_C sml_devinf_propertylist_s();
+ IMPORT_C ~sml_devinf_propertylist_s();
+ } *SmlDevInfPropertyListPtr_t, SmlDevInfPropertyList_t;
+
+typedef struct sml_devinf_ctdataproplist_s : public CBase
+ {
+public:
+ SmlDevInfCTDataPropPtr_t data;
+ struct sml_devinf_ctdataproplist_s *next;
+
+public:
+ IMPORT_C sml_devinf_ctdataproplist_s();
+ IMPORT_C ~sml_devinf_ctdataproplist_s();
+ } *SmlDevInfCTDataPropListPtr_t, SmlDevInfCTDataPropList_t;
+
+typedef enum
+ {
+ SML_PROPNAME,
+ SML_PARAMNAME
+ } SmlPreviousElement_t;
+
+typedef struct sml_devinf_ctcap_s : public CXMLElement
+ {
+private:
+ SmlPreviousElement_t prevelem;
+ CXMLElement* iParent;
+
+private:
+ CXMLElement* GetPreviousElem() const;
+
+public:
+ SmlPcdataPtr_t cttype;
+ SmlDevInfCTDataPropListPtr_t prop;
+ // 1.2 CHANGES : new elements
+ SmlPcdataPtr_t verct;
+ SmlPcdataPtr_t fieldlevel;
+ SmlDevInfPropertyListPtr_t property;
+ // changes end
+
+public:
+ IMPORT_C sml_devinf_ctcap_s();
+ IMPORT_C sml_devinf_ctcap_s( CXMLElement* aParent );
+ IMPORT_C ~sml_devinf_ctcap_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfCtCapPtr_t, SmlDevInfCtCap_t;
+
+typedef struct sml_devinf_ctcaplist_s : public CXMLElement
+ {
+public:
+ SmlDevInfCtCapPtr_t data;
+ struct sml_devinf_ctcaplist_s *next;
+
+public:
+ IMPORT_C sml_devinf_ctcaplist_s();
+ IMPORT_C ~sml_devinf_ctcaplist_s();
+ } *SmlDevInfCtCapListPtr_t, SmlDevInfCtCapList_t;
+
+typedef struct sml_devinf_datastore_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t sourceref;
+ SmlPcdataPtr_t displayname; /* optional */
+ SmlPcdataPtr_t maxguidsize; /* optional */
+ SmlDevInfXmitPtr_t rxpref;
+ SmlDevInfXmitListPtr_t rx; /* optional */
+ SmlDevInfXmitPtr_t txpref;
+ SmlDevInfXmitListPtr_t tx; /* optional */
+ SmlDevInfDSMemPtr_t dsmem; /* optional */
+ SmlDevInfSyncCapPtr_t synccap;
+ // 1.2 CHANGES : new / moved elements
+ SmlPcdataPtr_t supportHierarchicalSync;
+ SmlDevInfCtCapListPtr_t ctcap;
+ SmlDevInfXmitListPtr_t filterrx; /* optional */
+ SmlDevInfFilterCapListPtr_t filtercap; /* optional */
+ // changes end
+
+public:
+ IMPORT_C sml_devinf_datastore_s();
+ IMPORT_C ~sml_devinf_datastore_s();
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ } *SmlDevInfDatastorePtr_t, SmlDevInfDatastore_t;
+
+typedef struct sml_devinf_datastorelist_s : public CXMLElement
+ {
+public:
+ SmlDevInfDatastorePtr_t data;
+ struct sml_devinf_datastorelist_s *next;
+
+public:
+ IMPORT_C sml_devinf_datastorelist_s();
+ IMPORT_C ~sml_devinf_datastorelist_s();
+ } *SmlDevInfDatastoreListPtr_t, SmlDevInfDatastoreList_t;
+
+typedef struct sml_devinf_devinf_s : public CXMLElement
+ {
+public:
+ SmlPcdataPtr_t verdtd;
+ SmlPcdataPtr_t man; /* optional */
+ SmlPcdataPtr_t mod; /* optional */
+ SmlPcdataPtr_t oem; /* optional */
+ SmlPcdataPtr_t fwv; /* optional */
+ SmlPcdataPtr_t swv; /* optional */
+ SmlPcdataPtr_t hwv; /* optional */
+ SmlPcdataPtr_t devid;
+ SmlPcdataPtr_t devtyp;
+ Flag_t flags;
+ SmlDevInfDatastoreListPtr_t datastore;
+ SmlDevInfCtCapListPtr_t ctcap;
+ SmlDevInfExtListPtr_t ext;
+
+public:
+ IMPORT_C sml_devinf_devinf_s();
+ IMPORT_C ~sml_devinf_devinf_s();
+
+ TBool NeedsCleanup() const;
+ CXMLElement* BeginElementL( TUint8 aTag, const TXMLElementParams& aParams = TXMLElementParams() );
+ CXMLElement::TAction EndElementL( TAny* aCallbacks, TUint8 aTag );
+ } *SmlDevInfDevInfPtr_t, SmlDevInfDevInf_t;
+
+#endif // __SML_DEVINFDTD_H__