|
1 /* |
|
2 * Copyright (c) 2000 - 2001 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of the License "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef NW_LMGR_OBJECTBOX_H |
|
20 #define NW_LMGR_OBJECTBOX_H |
|
21 |
|
22 #include "nw_lmgr_mediabox.h" |
|
23 |
|
24 #ifdef __cplusplus |
|
25 extern "C" { |
|
26 #endif /* __cplusplus */ |
|
27 |
|
28 |
|
29 /* ------------------------------------------------------------------------- */ |
|
30 typedef struct NW_LMgr_ObjectBox_Class_s NW_LMgr_ObjectBox_Class_t; |
|
31 typedef struct NW_LMgr_ObjectBox_s NW_LMgr_ObjectBox_t; |
|
32 |
|
33 /* ------------------------------------------------------------------------- */ |
|
34 class CLMgrObjectBox; |
|
35 class MLMgrObjectBoxListener; |
|
36 class CCoeControl; |
|
37 |
|
38 /* ------------------------------------------------------------------------- */ |
|
39 typedef struct NW_LMgr_ObjectBox_ClassPart_s |
|
40 { |
|
41 void** unused; |
|
42 } NW_LMgr_ObjectBox_ClassPart_t; |
|
43 |
|
44 struct NW_LMgr_ObjectBox_Class_s |
|
45 { |
|
46 NW_Object_Core_ClassPart_t NW_Object_Core; |
|
47 NW_Object_Base_ClassPart_t NW_Object_Base; |
|
48 NW_Object_Dynamic_ClassPart_t NW_Object_Dynamic; |
|
49 NW_LMgr_Box_ClassPart_t NW_LMgr_Box; |
|
50 NW_LMgr_MediaBox_ClassPart_t NW_LMgr_MediaBox; |
|
51 NW_LMgr_ObjectBox_ClassPart_t NW_LMgr_ObjectBox; |
|
52 }; |
|
53 |
|
54 /* ------------------------------------------------------------------------- */ |
|
55 struct NW_LMgr_ObjectBox_s |
|
56 { |
|
57 NW_LMgr_MediaBox_t super; |
|
58 |
|
59 /* PRIVATE memeber fields */ |
|
60 CLMgrObjectBox* iObjectBox; |
|
61 }; |
|
62 |
|
63 /* ------------------------------------------------------------------------- */ |
|
64 |
|
65 #define NW_LMgr_ObjectBox_GetClassPart(_object) \ |
|
66 (NW_Object_GetClassPart(_object, NW_LMgr_ObjectBox)) |
|
67 |
|
68 #define NW_LMgr_ObjectBoxOf(object) \ |
|
69 (NW_Object_Cast (object, NW_LMgr_ObjectBox)) |
|
70 |
|
71 #define NW_LMgr_ObjectBox_GetObjectBox(_box) \ |
|
72 (((NW_LMgr_ObjectBox_t&) (_box)).iObjectBox) |
|
73 |
|
74 /*------------------------------------------------------------------------- */ |
|
75 NW_LMGR_EXPORT const NW_LMgr_ObjectBox_Class_t NW_LMgr_ObjectBox_Class; |
|
76 |
|
77 /* ------------------------------------------------------------------------- * |
|
78 public final methods |
|
79 * ------------------------------------------------------------------------- */ |
|
80 NW_LMGR_EXPORT |
|
81 NW_Bool |
|
82 NW_LMgr_ObjectBox_IsActive(NW_LMgr_Box_t* box); |
|
83 |
|
84 /* ------------------------------------------------------------------------- * |
|
85 convenience functions |
|
86 * ------------------------------------------------------------------------- */ |
|
87 NW_LMGR_EXPORT |
|
88 NW_LMgr_ObjectBox_t* |
|
89 NW_LMgr_ObjectBox_New(NW_ADT_Vector_Metric_t numProperties); |
|
90 |
|
91 #ifdef __cplusplus |
|
92 } // extern "C" { |
|
93 #endif /* __cplusplus */ |
|
94 |
|
95 #endif /* NW_LMGR_OBJECTBOX_H */ |