diff -r 489cf6208544 -r 95d45f234cf3 keepalive/flextimer/server/engine/inc/flextimercontainer.inl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/keepalive/flextimer/server/engine/inc/flextimercontainer.inl Wed Jun 23 18:39:24 2010 +0300 @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2010 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 + * + * Description: + * This file contains inline functions of FlexTimerContainer class. + * + */ + +// Protection against nested includes +#ifndef FLEXTIMERCONTAINER_INL +#define FLEXTIMERCONTAINER_INL + +// --------------------------------------------------------------------------- +// Converts micro seconds interval to tick based absolute time (also in micro +// seconds). All flextimer item time handling in engine is based on this tick +// based absolute time. Note that the time is not using system time base. +// --------------------------------------------------------------------------- +// +inline TInt64 CFlexTimerContainer::IntervalToAbsoluteTime( + const TTimeIntervalMicroSeconds& aInterval ) + { + TTime tempTime; + GetCurrentTime( tempTime ); + + return tempTime.Int64() + aInterval.Int64(); + } +// --------------------------------------------------------------------------- +// Converts system ticks to microseconds. +// --------------------------------------------------------------------------- +// +inline TInt64 CFlexTimerContainer::TicksToAbsoluteTime( const TUint32 aTicks ) + { + return static_cast ( aTicks ) + * static_cast ( iTickPeriod ); + } + +#endif //FLEXTIMERCONTAINER_INL