19 |
19 |
20 #ifndef __ISICHANNELROUTERIF_H__ |
20 #ifndef __ISICHANNELROUTERIF_H__ |
21 #define __ISICHANNELROUTERIF_H__ |
21 #define __ISICHANNELROUTERIF_H__ |
22 |
22 |
23 #include <e32def.h> // For TInt, TAny |
23 #include <e32def.h> // For TInt, TAny |
|
24 #include "misiobjectrouterif.h" |
24 |
25 |
25 class MISIRouterChannelIf; |
26 class MISIRouterChannelIf; |
26 |
27 |
27 /* |
28 /* |
28 * Abstract interface for channel to use router services. |
29 * Abstract interface for channel to use router services. |
29 */ |
30 */ |
30 class MISIChannelRouterIf |
31 class MISIChannelRouterIf : public MISIObjectRouterIf |
31 { |
32 { |
32 |
33 |
33 public: |
34 public: |
34 |
|
35 enum TISIDfcQThreadType |
|
36 { |
|
37 EISIKernelMainThread = 0, |
|
38 EISIKernelRequestCompletionThread, |
|
39 EISIUserMainThread, |
|
40 EISIUserRequestCompletionThread |
|
41 }; |
|
42 |
35 |
43 /* |
36 /* |
44 * Informs router that channel is closed. |
37 * Informs router that channel is closed. |
45 */ |
38 */ |
46 virtual void Disconnect( const TUint8 aObjId ) = 0; |
39 virtual void Disconnect( const TUint8 aObjId ) = 0; |
47 |
|
48 /* |
|
49 * Returns thread according to TISIDfcThread enums. |
|
50 * @param aThreadIndex, threads index in table |
|
51 * @return pointer to thread |
|
52 */ |
|
53 virtual TDfcQue* GetDfcThread( const TISIDfcQThreadType aType ) = 0; |
|
54 |
|
55 virtual void FreeDfcThread( TDfcQue* aThread ) = 0; |
|
56 |
40 |
57 /* |
41 /* |
58 * Returns the interface. |
42 * Returns the interface. |
59 * @return pointer to the interface |
43 * @return pointer to the interface |
60 */ |
44 */ |