diff -r 000000000000 -r 1bce908db942 multimediacommsengine/mmcesrv/mmcemediamanager/inc/mcesrvendpoint.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/multimediacommsengine/mmcesrv/mmcemediamanager/inc/mcesrvendpoint.h Tue Feb 02 01:04:58 2010 +0200 @@ -0,0 +1,152 @@ +/* +* Copyright (c) 2005 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: +* +*/ + + + + +#ifndef CMCESRVENDPOINT_H +#define CMCESRVENDPOINT_H + +#include +#include "mcesrvstream.h" +#include "mcesrv.h" + + +class CMceComMediaSource; +class CMceMediaManager; +class TMceMccComEvent; +class CMceSrvStream; +class CMceComEndpoint; + +/** + * + * + * @lib + */ +class CMceSrvEndpoint: public CBase + { + + +public: // Constructors & Destructor + + + /** + * Destructor. + */ + ~CMceSrvEndpoint(); + + +public: // Source and sink functions + + + /** + * Gets id + * @return id + */ + TUint32& Id(); + + /** + * Gets the original com endpoint + * @return the original com endpoint + */ + CMceComEndpoint& Data() const; + + /** + * Handles event from MCC + */ + void EventReceived( TMceMccComEvent& aEvent ); + + + /** + * Gets the source type + * @return the source type + */ + const TUid Type() const; + + void SetState( CMceSrvStream::TState aState ); + + CMceSrvStream::TState State() const; + + /** + * Merges with stream from cloned session + */ + void Merge( CMceSrvEndpoint& aMergeWith ); + + TBool EnableL( CMceSrvStream& aStream, + TBool aSync = KMceSrvStreamNoSync ); + + TBool DisableL( CMceSrvStream& aStream, + TBool aSync = KMceSrvStreamNoSync, + TBool aForce = KMceSrvStreamNoForce ); + + TBool Reusable( const CMceSrvStream& aStream ) const; + + TBool StreamStateChangeEventReceived( TMceMccComEvent& aEvent ); + + TBool EndpointMatch( const CMceComEndpoint& aEndpoint, + TBool aUseProxyMatch ); + +public: + + /** + * Called after prepare is called for this + * stream + */ + virtual void MccPrepareCalledL( CMceSrvStream& aStream ); + + /** + * Gets correct endpoint from stream. + * @param aStream + * @return CMceSrvEndpoint + */ + virtual CMceSrvEndpoint& Endpoint( CMceSrvStream& aStream ) = 0; + + /** + * Handle secure key expired event + * @param aEvent MCC event + * @return void + */ + virtual void HandleSecureEventReceivedL( ) =0; + +protected: + + /** + * C++ default constructor. + */ + CMceSrvEndpoint( CMceMediaManager& aManager, CMceComEndpoint& aData ); + +protected: // owned data + + TUint32 iID; + CMceSrvStream::TState iState; + +protected: // NOT owned data + + CMceMediaManager* iManager; + CMceComEndpoint* iData; + + friend class CMceSrvStream; + + //definitions for unit testing + MCEMM_UT_DEFINITIONS + + + }; + + + +#endif //CMCESRVENDPOINT_H