locationtriggering/ltserver/ltserverlogic/src/lbtsettingsmanager.cpp
changeset 0 667063e416a2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/locationtriggering/ltserver/ltserverlogic/src/lbtsettingsmanager.cpp	Tue Feb 02 01:06:48 2010 +0200
@@ -0,0 +1,310 @@
+/*
+* Copyright (c) 2006 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:  Responsible for settings and retreiving all location 
+*				 triggering settings
+*
+*/
+
+
+// INCLUDE FILES
+#include <centralrepository.h>
+#include "lbtsettingsmanager.h"
+#include "lbttriggeringsettingskeys.h"
+#include "lbtlogger.h"
+
+// ======== MEMBER FUNCTIONS ========
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::NewL
+// Symbian Two - phase constructor
+// ---------------------------------------------------------------------------
+//
+CLbtSettingsManager* CLbtSettingsManager::NewL()
+	{
+	FUNC_ENTER("CLbtSettingsManager::NewL");
+	CLbtSettingsManager* self = new (ELeave) CLbtSettingsManager();
+	CleanupStack::PushL(self);
+	self->ConstructL();
+	CleanupStack::Pop(); // self
+	return self;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::ConstructL
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::ConstructL()
+	{
+	FUNC_ENTER("CLbtSettingsManager::ConstructL");
+	// Create a repository object
+	iRepository = CRepository::NewL(TUid::Uid(KCRUidLocationTriggeringSettings));
+	
+	// Get all the values and store it in RAM
+	iRepository->Get(ELbtOptimizationLevel, iOptimizationLevel);
+	iRepository->Get(ELbtModuleId, iModuleId);	
+	iRepository->Get(ELbtMinUpdateInterval, iMinUpdateInterval);
+	iRepository->Get(ELbtMinUpdateIntervalOnGpsFailure, iMinUpdateIntervalOnGpsFailure);
+	iRepository->Get(ELbtMaxUserSpeed, iMaxUserSpeed);
+	iRepository->Get(ELbtTriggeringMechanismState, iTriggeringMechanismState);
+	iRepository->Get(ELbtMinimumTriggerArea, iMinimumTriggerArea);
+	iRepository->Get(ELbtTrackModeInterval, iTrackModeInterval);
+	iRepository->Get(ELbtLocRequestTimeOut, iLocRequestTimeOut);
+	iRepository->Get(ELbtMinHysteresisArea, iMinHysteresisArea);
+	iRepository->Get(ELbtDaysForCleanup, iDaysForCleanup);
+	iRepository->Get(ELbtMaxActiveTriggers, iEnabledValidTriggerCount);
+	iRepository->Get(ELbtNppModuleId, iNppModuleId);
+	
+	LOG1("iOptimizationLevel = %d", iOptimizationLevel);
+	LOG1("iModuleId = %d", iModuleId);
+	LOG1("iMinUpdateInterval = %d", iMinUpdateInterval);
+	LOG1("iMinUpdateIntervalOnGpsFailure = %d", iMinUpdateIntervalOnGpsFailure);
+	LOG1("iMaxUserSpeed = %d", iMaxUserSpeed);
+	LOG1("iTriggeringMechanismState = %d", iTriggeringMechanismState);
+	LOG1("iMinimumTriggerArea = %d", iMinimumTriggerArea);
+	LOG1("iTrackModeInterval = %d", iTrackModeInterval);
+	LOG1("iLocRequestTimeOut = %d", iLocRequestTimeOut);
+	LOG1("iMinHysteresisArea = %d", iMinHysteresisArea);
+	LOG1("iDaysForCleanup = %d", iDaysForCleanup);
+	LOG1("iEnabledValidTriggerCount = %d", iEnabledValidTriggerCount);
+	LOG1("iNppModuleId = %d", iNppModuleId);
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::~CLbtSettingsManager
+// ---------------------------------------------------------------------------
+//
+CLbtSettingsManager::~CLbtSettingsManager()
+	{
+	FUNC_ENTER("CLbtSettingsManager::~CLbtSettingsManager");
+	delete iRepository;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetOptimizationLevel
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetOptimizationLevel(TInt aOptimizationLevel)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetOptimizationLevel");
+	TInt retVal = iRepository->Set(ELbtOptimizationLevel, aOptimizationLevel);
+	if(retVal == KErrNone)
+		{
+		iOptimizationLevel = aOptimizationLevel;
+		}
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetOptimizationLevel
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetOptimizationLevel()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetOptimizationLevel");
+	return iOptimizationLevel;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetModuleId
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetModuleId(TPositionModuleId aModuleId)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetModuleId");
+	TInt uid = aModuleId.iUid;
+	TInt retVal = iRepository->Set(ELbtModuleId, uid);
+	if(retVal == KErrNone)
+		{
+		iModuleId = aModuleId.iUid;
+		}
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetModuleId
+// ---------------------------------------------------------------------------
+//
+TPositionModuleId CLbtSettingsManager::GetModuleId()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetModuleId");
+	return TUid::Uid(iModuleId);
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetNppModuleId
+// ---------------------------------------------------------------------------
+//
+TPositionModuleId CLbtSettingsManager::GetNppModuleId()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetNppModuleId");
+	return TUid::Uid(iNppModuleId);
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetMinimumUpdateInterval
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetMinimumUpdateInterval(TInt aUpdateInterval)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetMinimumUpdateInterval");
+	TInt retVal = iRepository->Set(ELbtMinUpdateInterval, aUpdateInterval);
+	if(retVal == KErrNone)
+		{
+		iMinUpdateInterval = aUpdateInterval;
+		}
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetMinimumUpdateInterval
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetMinimumUpdateInterval()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetMinimumUpdateInterval");
+	return iMinUpdateInterval;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetMinimumUpdateIntervalOnGpsFailure
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetMinimumUpdateIntervalOnGpsFailure(TInt aUpdateInterval)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetMinimumUpdateIntervalOnGpsFailure");
+	TInt retVal = iRepository->Set(ELbtMinUpdateIntervalOnGpsFailure, aUpdateInterval);
+	if(retVal == KErrNone)
+		{
+		iMinUpdateIntervalOnGpsFailure = aUpdateInterval;
+		}
+	}
+
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetMinimumUpdateIntervalOnGpsFailure
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetMinimumUpdateIntervalOnGpsFailure()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetMinimumUpdateIntervalOnGpsFailure");
+	return iMinUpdateIntervalOnGpsFailure;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetMaximumUserSpeed
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetMaximumUserSpeed(TInt aSpeed)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetMaximumUserSpeed");
+	TInt retVal = iRepository->Set(ELbtMaxUserSpeed, aSpeed);
+	if(retVal == KErrNone)
+		{
+		iMaxUserSpeed = aSpeed;
+		}
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetMaximumUserSpeed
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetMaximumUserSpeed()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetMaximumUserSpeed");
+	return iMaxUserSpeed;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::SetTriggeringMechanismState
+// ---------------------------------------------------------------------------
+//
+void CLbtSettingsManager::SetTriggeringMechanismState(TLbtTriggeringMechanismState aState)
+	{
+	FUNC_ENTER("CLbtSettingsManager::SetTriggeringMechanismState");
+	TInt retVal = iRepository->Set(ELbtTriggeringMechanismState, aState);
+	if(retVal == KErrNone)
+		{
+		iTriggeringMechanismState = aState;
+		}
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetTriggeringMechanismState
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetTriggeringMechanismState()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetTriggeringMechanismState");
+	return iTriggeringMechanismState;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::MinimumTriggeringArea
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::MinimumTriggeringArea()
+	{
+	FUNC_ENTER("CLbtSettingsManager::MinimumTriggeringArea");
+	return iMinimumTriggerArea;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::TrackingModeInterval
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::TrackingModeInterval()
+	{
+	FUNC_ENTER("CLbtSettingsManager::TrackingModeInterval");
+	return iTrackModeInterval;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::GetLocationRequestTimeOut
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::GetLocationRequestTimeOut()
+	{
+	FUNC_ENTER("CLbtSettingsManager::GetLocationRequestTimeOut");
+	return iLocRequestTimeOut;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::MinimumHysteresisArea
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::MinimumHysteresisArea()
+	{
+	FUNC_ENTER("CLbtSettingsManager::MinimumHysteresisArea");
+	return iMinHysteresisArea;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::NumberOfDaysForCleanup
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::NumberOfDaysForCleanup()
+	{
+	FUNC_ENTER("CLbtSettingsManager::NumberOfDaysForCleanup");
+	return iDaysForCleanup;
+	}
+
+// ---------------------------------------------------------------------------
+// CLbtSettingsManager::NumberOfDaysForCleanup
+// ---------------------------------------------------------------------------
+//
+TInt CLbtSettingsManager::EnabledValidTriggerCount()
+	{
+	return iEnabledValidTriggerCount;
+	}
+
+// end of file
+
+