Home | History | Annotate | Download | only in libmediametrics

Lines Matching refs:prop

230         Prop *prop = &mProps[i];
231 if (prop->mNameLen != len) {
234 if (memcmp(name, prop->mName, len) == 0) {
241 MediaAnalyticsItem::Prop *MediaAnalyticsItem::findProp(const char *name) {
250 void MediaAnalyticsItem::Prop::setName(const char *name, size_t len) {
262 MediaAnalyticsItem::Prop *MediaAnalyticsItem::allocateProp(const char *name) {
265 Prop *prop;
268 prop = &mProps[i];
277 prop = &mProps[i];
278 prop->setName(name, len);
281 return prop;
289 Prop *prop = &mProps[i];
290 clearProp(prop);
293 copyProp(prop, &mProps[mPropCount-1]);
304 Prop *prop = allocateProp(name);
305 if (prop != NULL) {
306 clearPropValue(prop);
307 prop->mType = kTypeInt32;
308 prop->u.int32Value = value;
313 Prop *prop = allocateProp(name);
314 if (prop != NULL) {
315 clearPropValue(prop);
316 prop->mType = kTypeInt64;
317 prop->u.int64Value = value;
322 Prop *prop = allocateProp(name);
323 if (prop != NULL) {
324 clearPropValue(prop);
325 prop->mType = kTypeDouble;
326 prop->u.doubleValue = value;
332 Prop *prop = allocateProp(name);
334 if (prop != NULL) {
335 clearPropValue(prop);
336 prop->mType = kTypeCString;
337 prop->u.CStringValue = strdup(value);
342 Prop *prop = allocateProp(name);
343 if (prop != NULL) {
344 clearPropValue(prop);
345 prop->mType = kTypeRate;
346 prop->u.rate.count = count;
347 prop->u.rate.duration = duration;
354 Prop *prop = allocateProp(name);
355 if (prop == NULL) {
358 switch (prop->mType) {
360 prop->u.int32Value += value;
363 clearPropValue(prop);
364 prop->mType = kTypeInt32;
365 prop->u.int32Value = value;
371 Prop *prop = allocateProp(name);
372 if (prop == NULL) {
375 switch (prop->mType) {
377 prop->u.int64Value += value;
380 clearPropValue(prop);
381 prop->mType = kTypeInt64;
382 prop->u.int64Value = value;
388 Prop *prop = allocateProp(name);
389 if (prop == NULL) {
392 switch (prop->mType) {
394 prop->u.rate.count += count;
395 prop->u.rate.duration += duration;
398 clearPropValue(prop);
399 prop->mType = kTypeRate;
400 prop->u.rate.count = count;
401 prop->u.rate.duration = duration;
407 Prop *prop = allocateProp(name);
408 if (prop == NULL) {
411 switch (prop->mType) {
413 prop->u.doubleValue += value;
416 clearPropValue(prop);
417 prop->mType = kTypeDouble;
418 prop->u.doubleValue = value;
425 Prop *prop = findProp(name);
426 if (prop == NULL || prop->mType != kTypeInt32) {
430 *value = prop->u.int32Value;
436 Prop *prop = findProp(name);
437 if (prop == NULL || prop->mType != kTypeInt64) {
441 *value = prop->u.int64Value;
447 Prop *prop = findProp(name);
448 if (prop == NULL || prop->mType != kTypeRate) {
452 *count = prop->u.rate.count;
455 *duration = prop->u.rate.duration;
459 if (prop->u.rate.duration != 0) {
460 r = prop->u.rate.count / (double) prop->u.rate.duration;
468 Prop *prop = findProp(name);
469 if (prop == NULL || prop->mType != kTypeDouble) {
473 *value = prop->u.doubleValue;
480 Prop *prop = findProp(name);
481 if (prop == NULL || prop->mType != kTypeDouble) {
485 *value = strdup(prop->u.CStringValue);
528 Prop *prop = &mProps[i];
530 if (strcmp(prop->mName, attrs[j]) == 0) {
531 clearProp(prop);
534 *prop = mProps[mPropCount-1];
554 void MediaAnalyticsItem::initProp(Prop *prop) {
555 if (prop != NULL) {
556 prop->mName = NULL;
557 prop->mNameLen = 0;
559 prop->mType = kTypeNone;
563 void MediaAnalyticsItem::clearProp(Prop *prop)
565 if (prop != NULL) {
566 if (prop->mName != NULL) {
567 free((void *)prop->mName);
568 prop->mName = NULL;
569 prop->mNameLen = 0;
572 clearPropValue(prop);
576 void MediaAnalyticsItem::clearPropValue(Prop *prop)
578 if (prop != NULL) {
579 if (prop->mType == kTypeCString && prop->u.CStringValue != NULL) {
580 free(prop->u.CStringValue);
581 prop->u.CStringValue = NULL;
583 prop->mType = kTypeNone;
587 void MediaAnalyticsItem::copyProp(Prop *dst, const Prop *src)
614 Prop *ni = (Prop *)realloc(mProps, sizeof(Prop) * nsize);
698 Prop *prop = &mProps[i];
699 data->writeCString(prop->mName);
700 data->writeInt32(prop->mType);
701 switch (prop->mType) {
703 data->writeInt32(prop->u.int32Value);
706 data->writeInt64(prop->u.int64Value);
709 data->writeDouble(prop->u.doubleValue);
712 data->writeInt64(prop->u.rate.count);
713 data->writeInt64(prop->u.rate.duration);
716 data->writeCString(prop->u.CStringValue);
719 ALOGE("found bad Prop type: %d, idx %d, name %s",
720 prop->mType, i, prop->mName);
790 Prop *prop = &mProps[i];
791 switch (prop->mType) {
794 "%s=%d:", prop->mName, prop->u.int32Value);
798 "%s=%" PRId64 ":", prop->mName, prop->u.int64Value);
802 "%s=%e:", prop->mName, prop->u.doubleValue);
806 "%s=%" PRId64 "/%" PRId64 ":", prop->mName,
807 prop->u.rate.count, prop->u.rate.duration);
810 snprintf(buffer,sizeof(buffer), "%s=", prop->mName);
813 result.append(prop->u.CStringValue);
819 prop->mType, prop->mName);
989 Prop *iprop = &incoming->mProps[i];
998 Prop *oprop = findProp(iprop->mName);