18 @internalComponent |
18 @internalComponent |
19 */ |
19 */ |
20 |
20 |
21 #include "cmtpplaybackparam.h" |
21 #include "cmtpplaybackparam.h" |
22 #include "mtpplaybackcontrolpanic.h" |
22 #include "mtpplaybackcontrolpanic.h" |
|
23 #include "OstTraceDefinitions.h" |
|
24 #ifdef OST_TRACE_COMPILER_IN_USE |
|
25 #include "cmtpplaybackparamTraces.h" |
|
26 #endif |
|
27 |
23 |
28 |
24 |
29 |
25 /********************************************* |
30 /********************************************* |
26 class TMTPPbDataSuid |
31 class TMTPPbDataSuid |
27 **********************************************/ |
32 **********************************************/ |
28 TMTPPbCategory TMTPPbDataSuid::Category() const |
33 TMTPPbCategory TMTPPbDataSuid::Category() const |
29 { |
34 { |
|
35 OstTraceFunctionEntry0( TMTPPBDATASUID_CATEGORY_ENTRY ); |
|
36 OstTraceFunctionExit0( TMTPPBDATASUID_CATEGORY_EXIT ); |
30 return iPlayCategory; |
37 return iPlayCategory; |
31 } |
38 } |
32 |
39 |
33 const TDesC& TMTPPbDataSuid::Suid() const |
40 const TDesC& TMTPPbDataSuid::Suid() const |
34 { |
41 { |
|
42 OstTraceFunctionEntry0( TMTPPBDATASUID_SUID_ENTRY ); |
|
43 OstTraceFunctionExit0( TMTPPBDATASUID_SUID_EXIT ); |
35 return iSuid; |
44 return iSuid; |
36 } |
45 } |
37 |
46 |
38 TMTPPbDataSuid::TMTPPbDataSuid(TMTPPbCategory aCategory, const TDesC& aSuid): |
47 TMTPPbDataSuid::TMTPPbDataSuid(TMTPPbCategory aCategory, const TDesC& aSuid): |
39 iPlayCategory(aCategory), |
48 iPlayCategory(aCategory), |
40 iSuid(aSuid) |
49 iSuid(aSuid) |
41 { |
50 { |
42 |
51 OstTraceFunctionEntry0( TMTPPBDATASUID_TMTPPBDATASUID_ENTRY ); |
|
52 |
|
53 OstTraceFunctionExit0( TMTPPBDATASUID_TMTPPBDATASUID_EXIT ); |
43 } |
54 } |
44 |
55 |
45 /********************************************* |
56 /********************************************* |
46 class CMTPPbParamBase |
57 class CMTPPbParamBase |
47 **********************************************/ |
58 **********************************************/ |
48 |
59 |
49 CMTPPbParamBase::~CMTPPbParamBase() |
60 CMTPPbParamBase::~CMTPPbParamBase() |
50 { |
61 { |
|
62 OstTraceFunctionEntry0( CMTPPBPARAMBASE_CMTPPBPARAMBASE_ENTRY ); |
51 delete iData; |
63 delete iData; |
|
64 OstTraceFunctionExit0( CMTPPBPARAMBASE_CMTPPBPARAMBASE_EXIT ); |
52 } |
65 } |
53 |
66 |
54 CMTPPbParamBase::CMTPPbParamBase(): |
67 CMTPPbParamBase::CMTPPbParamBase(): |
55 iParamType(EMTPPbTypeNone) |
68 iParamType(EMTPPbTypeNone) |
56 { |
69 { |
57 |
70 OstTraceFunctionEntry0( DUP1_CMTPPBPARAMBASE_CMTPPBPARAMBASE_ENTRY ); |
|
71 |
|
72 OstTraceFunctionExit0( DUP1_CMTPPBPARAMBASE_CMTPPBPARAMBASE_EXIT ); |
58 } |
73 } |
59 |
74 |
60 CMTPPbParamBase::CMTPPbParamBase(TMTPPbCategory /*aCategory*/, const TDesC& /*aSuid*/): |
75 CMTPPbParamBase::CMTPPbParamBase(TMTPPbCategory /*aCategory*/, const TDesC& /*aSuid*/): |
61 iParamType(EMTPPbSuidSet) |
76 iParamType(EMTPPbSuidSet) |
62 { |
77 { |
63 |
78 OstTraceFunctionEntry0( DUP2_CMTPPBPARAMBASE_CMTPPBPARAMBASE_ENTRY ); |
|
79 |
|
80 OstTraceFunctionExit0( DUP2_CMTPPBPARAMBASE_CMTPPBPARAMBASE_EXIT ); |
64 } |
81 } |
65 |
82 |
66 CMTPPbParamBase::CMTPPbParamBase(TInt32 /*aValue*/): |
83 CMTPPbParamBase::CMTPPbParamBase(TInt32 /*aValue*/): |
67 iParamType(EMTPPbInt32) |
84 iParamType(EMTPPbInt32) |
68 { |
85 { |
69 |
86 OstTraceFunctionEntry0( DUP3_CMTPPBPARAMBASE_CMTPPBPARAMBASE_ENTRY ); |
|
87 |
|
88 OstTraceFunctionExit0( DUP3_CMTPPBPARAMBASE_CMTPPBPARAMBASE_EXIT ); |
70 } |
89 } |
71 |
90 |
72 CMTPPbParamBase::CMTPPbParamBase(TUint32 /*aValue*/): |
91 CMTPPbParamBase::CMTPPbParamBase(TUint32 /*aValue*/): |
73 iParamType(EMTPPbUint32) |
92 iParamType(EMTPPbUint32) |
74 { |
93 { |
75 |
94 OstTraceFunctionEntry0( DUP4_CMTPPBPARAMBASE_CMTPPBPARAMBASE_ENTRY ); |
|
95 |
|
96 OstTraceFunctionExit0( DUP4_CMTPPBPARAMBASE_CMTPPBPARAMBASE_EXIT ); |
76 } |
97 } |
77 |
98 |
78 void CMTPPbParamBase::ConstructL(TMTPPbCategory aCategory, const TDesC& aSuid) |
99 void CMTPPbParamBase::ConstructL(TMTPPbCategory aCategory, const TDesC& aSuid) |
79 { |
100 { |
|
101 OstTraceFunctionEntry0( CMTPPBPARAMBASE_CONSTRUCTL_ENTRY ); |
80 TMTPPbDataSuid* val = new (ELeave) TMTPPbDataSuid(aCategory, aSuid); |
102 TMTPPbDataSuid* val = new (ELeave) TMTPPbDataSuid(aCategory, aSuid); |
81 iData = static_cast<TAny*>(val); |
103 iData = static_cast<TAny*>(val); |
|
104 OstTraceFunctionExit0( CMTPPBPARAMBASE_CONSTRUCTL_EXIT ); |
82 } |
105 } |
83 |
106 |
84 void CMTPPbParamBase::ConstructL(TInt32 aValue) |
107 void CMTPPbParamBase::ConstructL(TInt32 aValue) |
85 { |
108 { |
|
109 OstTraceFunctionEntry0( DUP1_CMTPPBPARAMBASE_CONSTRUCTL_ENTRY ); |
86 TInt32* val = new (ELeave) TInt32(); |
110 TInt32* val = new (ELeave) TInt32(); |
87 *val = aValue; |
111 *val = aValue; |
88 iData = static_cast<TAny*>(val); |
112 iData = static_cast<TAny*>(val); |
|
113 OstTraceFunctionExit0( DUP1_CMTPPBPARAMBASE_CONSTRUCTL_EXIT ); |
89 } |
114 } |
90 |
115 |
91 void CMTPPbParamBase::ConstructL(TUint32 aValue) |
116 void CMTPPbParamBase::ConstructL(TUint32 aValue) |
92 { |
117 { |
|
118 OstTraceFunctionEntry0( DUP2_CMTPPBPARAMBASE_CONSTRUCTL_ENTRY ); |
93 TUint32* val = new (ELeave) TUint32(); |
119 TUint32* val = new (ELeave) TUint32(); |
94 *val = aValue; |
120 *val = aValue; |
95 iData = static_cast<TAny*>(val); |
121 iData = static_cast<TAny*>(val); |
|
122 OstTraceFunctionExit0( DUP2_CMTPPBPARAMBASE_CONSTRUCTL_EXIT ); |
96 } |
123 } |
97 |
124 |
98 void CMTPPbParamBase::ConstructL(const CMTPPbParamBase& aParam) |
125 void CMTPPbParamBase::ConstructL(const CMTPPbParamBase& aParam) |
99 { |
126 { |
|
127 OstTraceFunctionEntry0( DUP3_CMTPPBPARAMBASE_CONSTRUCTL_ENTRY ); |
100 TMTPPbDataType type(aParam.Type()); |
128 TMTPPbDataType type(aParam.Type()); |
101 __ASSERT_DEBUG((type > EMTPPbTypeNone && type < EMTPPbTypeEnd), Panic(EMTPPBArgumentErr)); |
129 __ASSERT_DEBUG((type > EMTPPbTypeNone && type < EMTPPbTypeEnd), Panic(EMTPPBArgumentErr)); |
102 __ASSERT_ALWAYS((type > EMTPPbTypeNone && type < EMTPPbTypeEnd), User::Leave(KErrArgument)); |
130 __ASSERT_ALWAYS_OST((type > EMTPPbTypeNone && type < EMTPPbTypeEnd), OstTrace0( TRACE_ERROR, CMTPPBPARAMBASE_CONSTRUCTL, "Error argument" ), User::Leave(KErrArgument)); |
103 |
131 |
104 switch(type) |
132 switch(type) |
105 { |
133 { |
106 case EMTPPbSuidSet: |
134 case EMTPPbSuidSet: |
107 { |
135 { |
117 { |
145 { |
118 ConstructL(aParam.Uint32L()); |
146 ConstructL(aParam.Uint32L()); |
119 } |
147 } |
120 break; |
148 break; |
121 default: |
149 default: |
122 User::Leave(KErrArgument); |
150 LEAVEIFERROR(KErrArgument, |
|
151 OstTrace0( TRACE_ERROR, DUP1_CMTPPBPARAMBASE_CONSTRUCTL, "Error argument" )); |
|
152 |
123 break; |
153 break; |
124 } |
154 } |
125 |
155 |
126 iParamType = type; |
156 iParamType = type; |
|
157 OstTraceFunctionExit0( DUP3_CMTPPBPARAMBASE_CONSTRUCTL_EXIT ); |
127 } |
158 } |
128 |
159 |
129 TMTPPbDataType CMTPPbParamBase::Type() const |
160 TMTPPbDataType CMTPPbParamBase::Type() const |
130 { |
161 { |
|
162 OstTraceFunctionEntry0( CMTPPBPARAMBASE_TYPE_ENTRY ); |
131 __ASSERT_DEBUG((iParamType > EMTPPbTypeNone && iParamType < EMTPPbTypeEnd), |
163 __ASSERT_DEBUG((iParamType > EMTPPbTypeNone && iParamType < EMTPPbTypeEnd), |
132 Panic(EMTPPBDataTypeErr)); |
164 Panic(EMTPPBDataTypeErr)); |
|
165 OstTraceFunctionExit0( CMTPPBPARAMBASE_TYPE_EXIT ); |
133 return iParamType; |
166 return iParamType; |
134 } |
167 } |
135 |
168 |
136 void CMTPPbParamBase::SetType(TMTPPbDataType aType) |
169 void CMTPPbParamBase::SetType(TMTPPbDataType aType) |
137 { |
170 { |
|
171 OstTraceFunctionEntry0( CMTPPBPARAMBASE_SETTYPE_ENTRY ); |
138 __ASSERT_DEBUG((iParamType == EMTPPbTypeNone), Panic(EMTPPBDataTypeErr)); |
172 __ASSERT_DEBUG((iParamType == EMTPPbTypeNone), Panic(EMTPPBDataTypeErr)); |
139 __ASSERT_DEBUG((aType > EMTPPbTypeNone && aType < EMTPPbTypeEnd), Panic(EMTPPBDataTypeErr)); |
173 __ASSERT_DEBUG((aType > EMTPPbTypeNone && aType < EMTPPbTypeEnd), Panic(EMTPPBDataTypeErr)); |
140 iParamType = aType; |
174 iParamType = aType; |
|
175 OstTraceFunctionExit0( CMTPPBPARAMBASE_SETTYPE_EXIT ); |
141 } |
176 } |
142 |
177 |
143 TAny* CMTPPbParamBase::GetData() const |
178 TAny* CMTPPbParamBase::GetData() const |
144 { |
179 { |
|
180 OstTraceFunctionEntry0( CMTPPBPARAMBASE_GETDATA_ENTRY ); |
145 __ASSERT_DEBUG((iData != NULL), Panic(EMTPPBDataNullErr)); |
181 __ASSERT_DEBUG((iData != NULL), Panic(EMTPPBDataNullErr)); |
|
182 OstTraceFunctionExit0( CMTPPBPARAMBASE_GETDATA_EXIT ); |
146 return iData; |
183 return iData; |
147 } |
184 } |
148 |
185 |
149 void CMTPPbParamBase::SetData(TAny* aData) |
186 void CMTPPbParamBase::SetData(TAny* aData) |
150 { |
187 { |
|
188 OstTraceFunctionEntry0( CMTPPBPARAMBASE_SETDATA_ENTRY ); |
151 __ASSERT_DEBUG((aData != NULL), Panic(EMTPPBDataNullErr)); |
189 __ASSERT_DEBUG((aData != NULL), Panic(EMTPPBDataNullErr)); |
152 iData = aData; |
190 iData = aData; |
|
191 OstTraceFunctionExit0( CMTPPBPARAMBASE_SETDATA_EXIT ); |
153 } |
192 } |
154 |
193 |
155 const TMTPPbDataSuid& CMTPPbParamBase::SuidSetL() const |
194 const TMTPPbDataSuid& CMTPPbParamBase::SuidSetL() const |
156 { |
195 { |
|
196 OstTraceFunctionEntry0( CMTPPBPARAMBASE_SUIDSETL_ENTRY ); |
157 __ASSERT_DEBUG((iParamType == EMTPPbSuidSet), Panic(EMTPPBDataTypeErr)); |
197 __ASSERT_DEBUG((iParamType == EMTPPbSuidSet), Panic(EMTPPBDataTypeErr)); |
158 __ASSERT_ALWAYS((iParamType == EMTPPbSuidSet), User::Leave(KErrArgument)); |
198 __ASSERT_ALWAYS_OST((iParamType == EMTPPbSuidSet), OstTrace0( TRACE_ERROR, CMTPPBPARAMBASE_SUIDSETL, "Error argument" ), User::Leave(KErrArgument)); |
159 |
199 |
160 return *static_cast<TMTPPbDataSuid*>(iData); |
200 return *static_cast<TMTPPbDataSuid*>(iData); |
161 } |
201 } |
162 |
202 |
163 TInt32 CMTPPbParamBase::Int32L() const |
203 TInt32 CMTPPbParamBase::Int32L() const |
164 { |
204 { |
|
205 OstTraceFunctionEntry0( CMTPPBPARAMBASE_INT32L_ENTRY ); |
165 __ASSERT_DEBUG((iParamType == EMTPPbInt32), Panic(EMTPPBDataTypeErr)); |
206 __ASSERT_DEBUG((iParamType == EMTPPbInt32), Panic(EMTPPBDataTypeErr)); |
166 __ASSERT_ALWAYS((iParamType == EMTPPbInt32), User::Leave(KErrArgument)); |
207 __ASSERT_ALWAYS_OST((iParamType == EMTPPbInt32), OstTrace0( TRACE_ERROR, CMTPPBPARAMBASE_INT32L, "Error argument" ), User::Leave(KErrArgument)); |
167 |
208 |
168 return *static_cast<TInt32*>(iData); |
209 return *static_cast<TInt32*>(iData); |
169 } |
210 } |
170 |
211 |
171 TUint32 CMTPPbParamBase::Uint32L() const |
212 TUint32 CMTPPbParamBase::Uint32L() const |
172 { |
213 { |
|
214 OstTraceFunctionEntry0( CMTPPBPARAMBASE_UINT32L_ENTRY ); |
173 __ASSERT_DEBUG((iParamType == EMTPPbUint32), Panic(EMTPPBDataTypeErr)); |
215 __ASSERT_DEBUG((iParamType == EMTPPbUint32), Panic(EMTPPBDataTypeErr)); |
174 __ASSERT_ALWAYS((iParamType == EMTPPbUint32), User::Leave(KErrArgument)); |
216 __ASSERT_ALWAYS_OST((iParamType == EMTPPbUint32), OstTrace0( TRACE_ERROR, CMTPPBPARAMBASE_UINT32L, "Error argument" ), User::Leave(KErrArgument)); |
175 |
217 |
176 return *static_cast<TUint32*>(iData); |
218 return *static_cast<TUint32*>(iData); |
177 } |
219 } |