CSensrvChannelListener Class Reference
class CSensrvChannelListener : public CBase
|
Implements channel listener related handling.
Nested Classes and Structures
Constructor & Destructor Documentation
CSensrvChannelListener(CSensrvSession &, CSensrvChannel &, CSensrvPluginProxy &)
~CSensrvChannelListener()
~CSensrvChannelListener
|
(
|
)
|
[virtual]
|
Member Functions Documentation
ClearConditionQueues()
void
|
ClearConditionQueues
|
(
|
)
|
[private]
|
CompleteConditionMessageD(CSensrvChannelConditionSetImpl &)
void
|
CompleteConditionMessageD
|
(
|
CSensrvChannelConditionSetImpl &
|
aSet
|
)
|
[private]
|
Completes asynchronous condition message. Message must exist.
Parameters
CSensrvChannelConditionSetImpl & aSet
|
Set that was met. There must be met data in this set. The set is removed from met sets list and deleted if completion of message is successful. Otherwise the set remains in the list.
|
CompleteSetPropertySuccessInd()
void
|
CompleteSetPropertySuccessInd
|
(
|
)
|
[private]
|
Completes the property set success notification to client.
ConstructL()
void
|
ConstructL
|
(
|
)
|
[private]
|
2nd phase of construction
DesiredBufferingCount()
TInt
|
DesiredBufferingCount
|
(
|
)
|
const [inline]
|
Gets listener desired buffering count.
DispatchMessage(CSensrvMessage &)
Handles client message. Message completion responsibility transfers. Called only within server thread.
EvaluateConditionsForNewData()
void
|
EvaluateConditionsForNewData
|
(
|
)
|
[private]
|
Evaluates conditions for new data.
EvaluatePriorities(const TPropertySetSuccessEvaluationData &)
Handles the property set success status logic
HandleNextProperty()
void
|
HandleNextProperty
|
(
|
)
|
|
Notifies client about any changed properties in property queue.
HandleSetPropertySuccessInd(const TPropertySetSuccessEvaluationData &)
Handles the property set success status update and client notification
MaximumBufferingCount()
TInt
|
MaximumBufferingCount
|
(
|
)
|
const [inline]
|
Gets listener maximum buffering count.
NewDataAvailable()
TInt
|
NewDataAvailable
|
(
|
)
|
|
Notifies listener that there is new data available in buffer.
NewL(CSensrvSession &, CSensrvChannel &, CSensrvPluginProxy &)
Two phase constructor
-
Since
-
S60 5.0
-
Exceptions
-
KErrNoMemory
|
Out of memory
|
Priority()
Get the priority of the client process which this listener is serving.
ReadPriority()
Read the priority of the process which this listener is serving from cenrep.
RemainingBufferingCount()
TInt
|
RemainingBufferingCount
|
(
|
)
|
|
Gets the remaining buffering count still required to fill data request from client.
Session()
Gets session related to this listener.
SetMessageData(TChannelDataMessage &)
Sets data to message to be returned to client.
StartListening(TInt, TInt, TInt, TSensrvChannelListenerState)
Starts listening actively for data and/or conditions. Buffering period and buffering count are same for both condition and data listening. If listener is doing both, lower values for each are used.
Parameters
TInt
aDesiredBufferingCount
|
|
TInt
aMaximumBufferingCount
|
|
TInt
aBufferingPeriod
|
|
TSensrvChannelListenerState
aState
|
Indicates if starting listening for data or (EChannelListenerStateDataListening) or conditions (EChannelListenerStateConditionListening).
|
State()
TInt
|
State
|
(
|
)
|
const [inline]
|
StopListening(TSensrvChannelListenerState, TBool)
Stops listening actively for data and/or conditions.
Parameters
TSensrvChannelListenerState
aState
|
Indicates if stopping listening for data or (EChannelListenerStateDataListening) or conditions (EChannelListenerStateConditionListening).
|
TBool
aDeleteConditions
|
If ETrue, indicates that any added conditions should also be deleted. This is only evaluated if aState is EChannelListenerStateConditionListening.
|
StoreChangedProperty(const TSensrvProperty &)
Stores changed property to the property queue. Called from SSY thread only.
TimerFired(TInt)
void
|
TimerFired
|
(
|
TInt
|
aTimerId
|
)
|
|
Called when the timer fires
Parameters
TInt
aTimerId
|
Timer identifier to id which timer fired.
|
Member Enumerations Documentation
Enum TSensrvChannelListenerState
Channel listener state. State is a bitmask, as listener may be listening for both conditions and data simultaneously. EChannelListenerStateInactive state is an exception, and it may not be masked with other states.
Enumerators
EChannelListenerStateInactive = 0
|
|
EChannelListenerStateConditionListening = 1
|
|
EChannelListenerStateDataListening = 2
|
|
EChannelListenerStatePropertyListening = 4
|
|
Member Data Documentation
TSglQueIter< CSensrvChannelConditionSetImpl > iAddedConditionSetIter
TSglQueIter
< CSensrvChannelConditionSetImpl >
|
iAddedConditionSetIter
|
[private]
|
Iterator for condition list
TSglQue< CSensrvChannelConditionSetImpl > iAddedConditionSetList
TSglQue
< CSensrvChannelConditionSetImpl >
|
iAddedConditionSetList
|
[private]
|
List of added condition sets Sets in list owned.
TTimeIntervalMicroSeconds32
iBufferingPeriod
Listener desired buffering period, in microseconds.
TBool
iBufferingPeriodExpired
TBool
|
iBufferingPeriodExpired
|
[private]
|
Indicates buffering period has expired, so any amount of data is enough.
CSensrvTimer * iBufferingPeriodTimer
Buffering period timer Own.
CSensrvChannel & iChannel
CSensrvMessage * iClientConditionMessage
Pending message for sending condition met notifications to client Not own.
CSensrvMessage * iClientDataMessage
Pending message for sending data to client Not own.
CSensrvMessage * iClientPropertyMessage
Pending message for sending changed property data to client Not own.
CSensrvConditionEvaluator * iConditionEvaluator
Condition evaluator. Not own.
TInt
iDesiredBufferingCount
TInt
|
iDesiredBufferingCount
|
[private]
|
Listener desired buffering count
TBool
iInitialDataSent
TBool
|
iInitialDataSent
|
[private]
|
Indicates if initial data has been sent
TInt
iMaximumBufferingCount
TInt
|
iMaximumBufferingCount
|
[private]
|
Listener maximum buffering count
TSglQueIter< CSensrvChannelConditionSetImpl > iMetConditionSetIter
TSglQueIter
< CSensrvChannelConditionSetImpl >
|
iMetConditionSetIter
|
[private]
|
Iterator for condition list
TSglQue< CSensrvChannelConditionSetImpl > iMetConditionSetList
TSglQue
< CSensrvChannelConditionSetImpl >
|
iMetConditionSetList
|
[private]
|
List of met condition sets that are not yet notified. Sets in list owned.
TInt
iPriority
Priority of the client process. KErrUnknown means that the priority is not yet fetched from CentralRepository.
CSensrvPluginProxy & iProxy
CSensrvSession & iSession
TSetPropertySuccessIndicator
iSetPropertySuccessInd
TSetPropertySuccessIndicator
|
iSetPropertySuccessInd
|
[private]
|
The current status of property set success indicator
TBool
iSetPropertySuccessIndPending
TBool
|
iSetPropertySuccessIndPending
|
[private]
|
Indicates pending property set success notification
TInt
iState
Current channel listener state
TSensrvTailIndexItem * iTailItem
Tail index item. Not own, owned by channel buffer
CSensrvPropertyQueue * iUnnotifiedProperties
Stores changed properties informed by channel until they can be handled.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.