--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/servicediscoveryandcontrol/pnp/test/upnp/upnpdescription/inc/cpnpdeviceparam.h Tue Feb 02 01:12:20 2010 +0200
@@ -0,0 +1,148 @@
+// Copyright (c) 2008-2009 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:
+//
+
+#ifndef __CPNPDEVICEPARAM_H_
+#define __CPNPDEVICEPARAM_H_
+
+#include <e32cmn.h>
+#include <e32base.h>
+#include "cupnpproperty.h"
+
+class CUPnPServiceInfo;
+class CUPnPIconInfo;
+class CUPnPDevice;
+
+/**
+Container for device object.
+
+@publishedPartner
+@prototype */
+
+class CUPnPDeviceDescription: public CUPnPProperty
+ {
+public:
+
+ IMPORT_C static CUPnPDeviceDescription* NewL();
+ IMPORT_C ~CUPnPDeviceDescription();
+
+ inline void SetDeviceObjectL( CUPnPDevice *aValue);
+ inline CUPnPDevice* DeviceObject() const;
+
+ inline void SetMinorNumberL(const TInt aValue);
+ inline const TInt MinorNumber () const;
+
+ inline void SetMajorNumberL(const TInt aValue);
+ inline const TInt MajorNumber () const;
+ TBool Validate(const RStringPool& aStringPool, const TStringTable& aStringTable ) const;
+
+private :
+
+ CUPnPDeviceDescription();
+ void ConstructL();
+
+private :
+ TVersion iVersion;
+ CUPnPDevice *iDeviceObj;
+
+ };
+
+
+/**
+Describes a device object.
+Can contain embedded device, service and icon info
+
+@publishedPartner
+@prototype */
+
+class CUPnPDevice: public CUPnPProperty
+ {
+
+public:
+ IMPORT_C static CUPnPDevice* NewL();
+ IMPORT_C ~CUPnPDevice();
+
+ inline void AppendToEmbeddedDeviceInfoTableL(const CUPnPDevice* aValue);
+ inline TInt CountOfEmbeddedDeviceInfoTable () const;
+ inline CUPnPDevice* AtEmbeddedDeviceInfoTable(const TInt aIndex) const;
+ inline void DeleteEmbeddedDeviceInfoAtIndexL(const TInt aIndex);
+
+ inline void AppendToServiceInfoTableL(const CUPnPServiceInfo* aValue);
+ inline TInt CountOfServiceInfoTable () const;
+ inline CUPnPServiceInfo* AtServiceInfoTable(const TInt aIndex) const;
+ inline void DeleteServiceInfoAtIndexL(const TInt aIndex);
+
+ inline void AppendToIconInfoTableL(const CUPnPIconInfo* aValue);
+ inline TInt CountOfIconInfoTable () const;
+ inline CUPnPIconInfo* AtIconInfoTable(const TInt aIndex) const;
+ inline void SetDlna( TBool aValue);
+ inline TBool Dlna() const ;
+ TBool Validate(const RStringPool& aStringPool, const TStringTable& aStringTable );
+private :
+
+ CUPnPDevice();
+ void ConstructL();
+
+private :
+ TBool iHasDlnaTag;
+ RPointerArray<CUPnPDevice> iEmbeddedDeviceInfo;
+ RPointerArray<CUPnPServiceInfo> iServiceInfo;
+ RPointerArray<CUPnPIconInfo> iIconInfo;
+ };
+
+
+/**
+Following structure store service information.
+
+@publishedPartner
+@prototype */
+class CUPnPServiceInfo: public CUPnPProperty
+ {
+
+public:
+ IMPORT_C static CUPnPServiceInfo* NewL();
+ IMPORT_C ~CUPnPServiceInfo();
+ TBool Validate(const RStringPool& aStringPool, const TStringTable& aStringTable ) ;
+
+private :
+
+ CUPnPServiceInfo();
+ void ConstructL();
+
+private:
+ };
+
+/**
+
+CUPnPIconInfo stores icon information.
+
+@publishedPartner
+@prototype */
+
+class CUPnPIconInfo: public CUPnPProperty
+ {
+
+public:
+ IMPORT_C static CUPnPIconInfo* NewL();
+ IMPORT_C ~CUPnPIconInfo();
+
+ TBool Validate(const RStringPool& aStringPool, const TStringTable& aStringTable ) ;
+private :
+
+ CUPnPIconInfo();
+ void ConstructL();
+ };
+
+#include "cpnpdeviceparam.inl"
+#endif /*CPNPDEVICEPARAM_H_*/