cbsref/telephonyrefplugins/atltsy/integrationtest/inc/testltsymodel.h
author hgs
Tue, 22 Jun 2010 11:02:32 +0100
changeset 44 8b72faa1200f
permissions -rw-r--r--
201024_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
44
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     1
//  TestTelephonyModel.h
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     2
//  Copyright (c) Symbian Software Ltd 2008. All rights reserved.
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     3
//
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     4
//  Implementation of the Class CTestTelephonyModel
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     5
//
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     6
#ifndef TESTTELEPHONYMODEL_H_
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     7
#define TESTTELEPHONYMODEL_H_
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     8
8b72faa1200f 201024_02
hgs
parents:
diff changeset
     9
// system include
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    10
#include <e32cmn.h>
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    11
#include <e32des8.h>
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    12
#include <etelmm.h>
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    13
#include <etel.h>
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    14
#include <etel3rdparty.h> 
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    15
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    16
// forward class
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    17
class CTestLtsySharedEnv;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    18
class CTestLtsyCallSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    19
class CTestLtsyPktSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    20
class CTestLtsySmsSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    21
class CTestLtsyPhoneStoreSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    22
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    23
// define the module name length
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    24
const TUint8 KModuleNameLen = 200;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    25
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    26
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    27
/**
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    28
 * This class acts as a proxy to provide the functions to return the shared data
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    29
 * accross the steps.
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    30
 * 
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    31
 */
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    32
class CTestLtsyModel : public CBase
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    33
/**
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    34
 * @internalAll
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    35
 * @test
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    36
 */
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    37
	{
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    38
public:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    39
	static CTestLtsyModel* NewL();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    40
	~CTestLtsyModel();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    41
	inline CTestLtsySharedEnv& SharedEnv();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    42
	inline CTestLtsyCallSharedData& CallSharedData();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    43
	inline CTestLtsyPktSharedData&  PktSharedData();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    44
	inline CTestLtsySmsSharedData&  SmsSharedData();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    45
	inline CTestLtsyPhoneStoreSharedData& PhoneStoreSharedData();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    46
private:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    47
	void ConstructL();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    48
private:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    49
	CTestLtsySharedEnv* iSharedPhoneEnv;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    50
	CTestLtsyCallSharedData* iCallSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    51
	CTestLtsyPktSharedData*  iPktSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    52
	CTestLtsySmsSharedData* iSmsSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    53
	CTestLtsyPhoneStoreSharedData* iPhoneStoreSharedData;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    54
	};
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    55
/**
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    56
 * This calss define a shared phone environment
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    57
 * 
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    58
 */
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    59
class CTestLtsySharedEnv : public CBase
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    60
/**
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    61
 * @internalAll
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    62
 * @test
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    63
 */
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    64
    { 
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    65
public:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    66
    ~CTestLtsySharedEnv();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    67
	static CTestLtsySharedEnv* NewL();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    68
    inline RMobilePhone& Phone();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    69
    inline RTelServer& ETelServer();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    70
    inline TBool PhoneOpened();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    71
    inline void IncreasePhoneReference();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    72
    inline void DecreasePhoneReference();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    73
    inline TInt PhoneRefCount();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    74
	void LoadModuleL(const TDesC& aModuleName);
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    75
	void OpenPhoneL(const TDesC& aModuleName);
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    76
	// must be called by client thread if it call OpenPhoneL()
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    77
	void ClosePhone();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    78
	void CreateTelephonyL();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    79
	void DestroyTelephony();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    80
	CTelephony* Telephony();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    81
private:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    82
    CTestLtsySharedEnv();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    83
    void ConstructL();	
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    84
    TBool FindPhoneIndex();
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    85
private:
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    86
	TBuf<KModuleNameLen> iModuleName;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    87
	RMobilePhone* iSharedPhone;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    88
	TBool iPhoneInitialized;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    89
	RTelServer iSharedTelServer;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    90
	TInt iPhoneRef;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    91
	TInt iPhoneIndex;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    92
	CTelephony *iTelephony;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    93
//	RMmCustomAPI     *iRmmCustomAPI;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    94
	CActiveScheduler*  iActiveSchaduler;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    95
//    TBuf<KCommsDbSvrMaxFieldLength> iTsyNameFromCommdb;
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    96
	};	
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    97
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    98
#include "TestLtsyModel.inl"
8b72faa1200f 201024_02
hgs
parents:
diff changeset
    99
8b72faa1200f 201024_02
hgs
parents:
diff changeset
   100
#endif /*TESTTELEPHONYMODEL_H_*/