--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/tms/tmsfactory/inc/tmsfactoryimpl.h Tue Feb 02 01:08:46 2010 +0200
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 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: Telephony Multimedia Service
+ *
+ */
+
+#ifndef TMSFACTORYIMPL_H_
+#define TMSFACTORYIMPL_H_
+
+#include <e32cmn.h>
+#include <tms.h>
+
+namespace TMS {
+
+// FORWARD DECLARATIONS
+class TMSCall;
+class TMSFormat;
+class TMSEffect;
+class TMSBuffer;
+class TMSSource;
+class TMSSink;
+class TMSGlobalRouting;
+
+// CLASS DECLARATION
+class TMSFactoryImpl
+ {
+public:
+ TMSFactoryImpl();
+ virtual ~TMSFactoryImpl();
+
+ gint CreateCall(TMSCallType ctype, TMSCall*& tmscall, guint ctxid);
+ gint DeleteCall(TMSCall*& tmsct);
+ gint IsCallTypeSupported(TMSCallType ctype, gboolean& flag);
+ gint GetSupportedFormats(const TMSStreamType strmtype,
+ FormatVector& fmtlist);
+ gint CreateFormat(TMSFormatType fmttype, TMSFormat*& tmsfmt);
+ gint DeleteFormat(TMSFormat*& tmsfmt);
+ gint CreateEffect(TMSEffectType tmseffecttype, TMSEffect*& tmseffect);
+ gint DeleteEffect(TMSEffect*& tmseffect);
+ gint CreateBuffer(TMSBufferType buffertype, guint size,
+ TMSBuffer*& tmsbuffer);
+ gint DeleteBuffer(TMSBuffer*& tmsbuffer);
+ gint CreateSource(TMSSourceType srctype, TMSSource*& tmssrc);
+ gint DeleteSource(TMSSource*& tmssrc);
+ gint CreateSink(TMSSinkType sinktype, TMSSink*& tmssink);
+ gint DeleteSink(TMSSink*& tmssink);
+ gint CreateGlobalRouting(TMSGlobalRouting*& globrouting);
+ gint DeleteGlobalRouting(TMSGlobalRouting*& globrouting);
+
+private:
+ gint QueryDevice(const TMSStreamType strmtype);
+
+private:
+ RArray<TUint32> iFormats;
+ gint iFrameSize;
+ };
+
+} //namespace TMS
+
+#endif