bluetoothengine/headsetsimulator/core/inc/Plugin/hssdppluginbase.h
branchheadsetsimulator
changeset 60 90dbfc0435e3
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothengine/headsetsimulator/core/inc/Plugin/hssdppluginbase.h	Wed Sep 15 15:59:44 2010 +0200
@@ -0,0 +1,104 @@
+/*
+ * Component Name: Headset Simulator
+ * Author: Comarch S.A.
+ * Version: 1.0
+ * Copyright (c) 2010 Comarch S.A.
+ *  
+ * This Software is submitted by Comarch S.A. to Symbian Foundation Limited on 
+ * the basis of the Member Contribution Agreement entered between Comarch S.A. 
+ * and Symbian Foundation Limited on 5th June 2009 (“Agreement”) and may be 
+ * used only in accordance with the terms and conditions of the Agreement. 
+ * Any other usage, duplication or redistribution of this Software is not 
+ * allowed without written permission of Comarch S.A.
+ * 
+ */
+
+#ifndef HSSDPPLUGINBASE_H_
+#define HSSDPPLUGINBASE_H_
+
+#include <ecom.h> 
+#include <hsecompluginbase.h>
+
+/**
+ * SDP plugin's UID
+ */
+const TUid KHsSdpBaseInterfaceDefinitionUid =
+    {
+    0xE0009DC3
+    };
+
+/**
+ * @brief Abstract methods for SDP plugin
+ */
+class MHsSdpBase
+{
+public:
+    /**
+     * Destructor
+     */
+    virtual ~MHsSdpBase() {};
+
+    /**
+     * Setter for service's port
+     * 
+     * @param aPort port number
+     */
+    virtual void SetServicePort( TInt aPort ) = 0;
+
+    /**
+     * Creates SDP plugin's implementation
+     */
+    virtual void CreateSdpRecordL() = 0;
+
+    /**
+     * Deletes SDP plugin's implementation
+     */
+    virtual void DeleteSdpRecordL() = 0;
+};
+
+/**
+ * @brief Base class for SDP plugins
+ */
+class CHsSdpBase : public CHsEComPluginBase, public MHsSdpBase
+
+{
+public:
+    /**
+     * Two-phase constructor
+     * @param aUid plugin's UID
+     * @return instance of class
+     */
+    static CHsSdpBase* NewL( const TUid aUid );
+
+    /**
+     * Two-phase constructor
+     * @param aData plugin's name
+     * @return instance of class
+     */
+    static CHsSdpBase* NewL( const TDesC8 &aData );
+
+public:
+    /**
+     * Destructor
+     */
+    virtual ~CHsSdpBase();
+
+public:
+    //Methods inherited from MHsSdpBase
+
+    virtual void SetServicePort( TInt aPort );
+
+    virtual void CreateSdpRecordL() = 0;
+
+    virtual void DeleteSdpRecordL() = 0;
+
+protected:
+
+    /** Port of service */
+    TInt iServicePort;
+
+};
+
+#include "hssdppluginbase.inl"
+
+#endif /* HSSDPPLUGINBASE_H_ */