telephonyserver/etelsimtoolkit/cetel/sat_hold.cpp
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserver/etelsimtoolkit/cetel/sat_hold.cpp	Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,74 @@
+// Copyright (c) 2002-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:
+// CSatPtrHolder implementation
+// CSatPtrHolder - class owned by SAT Rxxx objects to contain the TPtr8's and other member
+// data required by asynchronous functions so that any additional functions will not require 
+// breaking BC.
+// 
+//
+
+/**
+ @file
+*/
+
+#include "etelext.h"
+
+// Sat header files
+#include "Etelsat.h"
+#include "Satptr.h"
+
+//
+// CSatPtrHolder - class owned by SAT Rxxx objects to contain the TPtr8's and other member
+// data required by asynchronous functions so that any additional functions will not require 
+// breaking BC.
+//
+
+CSatPtrHolder* CSatPtrHolder::NewL(TInt aSizeOfPtrArray,TInt aSizeOfPtrCArray)
+/**
+ * Two phase constructor.
+ *
+ * @param aSizeOfPtrArray Size of the array containing the pointers.
+ */	{
+	CSatPtrHolder* p = new (ELeave) CSatPtrHolder();
+	CleanupStack::PushL(p);
+	p->ConstructL(aSizeOfPtrArray,aSizeOfPtrCArray);
+	CleanupStack::Pop();
+	return p;
+	}
+
+CSatPtrHolder::CSatPtrHolder()
+	{}
+
+CSatPtrHolder::~CSatPtrHolder()
+	{
+	iPtrArray.Close();
+	iPtrCArray.Close();
+	}
+
+void CSatPtrHolder::ConstructL(TInt aSizeOfPtrArray,TInt aSizeOfPtrCArray)
+/**
+ * This method constructs the two arrays: one to hold TPtr8's and the other TPtrC8's
+ */
+	{
+	TPtr8 ptr(reinterpret_cast<TUint8 *>(NULL),0);
+	TInt i;
+	for (i=0;i<aSizeOfPtrArray;i++)
+		User::LeaveIfError(iPtrArray.Append(ptr));
+		TPtrC8 ptrC(NULL,0);
+	for (i=0;i<aSizeOfPtrCArray;i++)
+		User::LeaveIfError(iPtrCArray.Append(ptrC));
+	}
+
+
+