Exemplo n.º 1
0
void decodeTimestamp(IBPP::Timestamp& ts, const ISC_TIMESTAMP& isc_ts)
{
    decodeDate(ts, isc_ts.timestamp_date);
    decodeTime(ts, isc_ts.timestamp_time);
}
Exemplo n.º 2
0
void MockMediaSample::dump(PrintStream& out) const
{
    out.print("{PTS(", presentationTime(), "), DTS(", decodeTime(), "), duration(", duration(), "), flags(", (int)flags(), "), generation(", generation(), ")}");
}
uint32_t MamaRecordedMessageCodec::decodeField(char*& buffer, MamaMsg* mm)
{
	// These modifications will be applied regardless of data type
	mamaFieldType mft = (mamaFieldType)0;
	mama_fid_t mff = 0;
	// Extract the fid
	memcpy(&mff, buffer, 2);
	buffer += 2;
	// Extract the field type
	memcpy(&mft, buffer, 4);
	buffer += 4;
	// 6 bytes already decoded...
	uint32_t r = 6;

	switch(mft)
	{
	case MAMA_FIELD_TYPE_BOOL:
		r += decodeBool(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_CHAR:
		r += decodeChar(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_I8:
		r += decodeI8(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_U8:
		r += decodeU8(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_I16:
		r += decodeI16(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_U16:
		r += decodeU16(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_I32:
		r += decodeI32(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_U32:
		r += decodeU32(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_I64:
		r += decodeI64(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_U64:
		r += decodeU64(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_F32:
		r += decodeF32(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_F64:
		r += decodeF64(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_TIME:
		r += decodeTime(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_PRICE:
		r += decodePrice(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_STRING:
		r += decodeString(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_VECTOR_STRING:
		r += decodeVectorString(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_VECTOR_I32:
		r += decodeVectorI32(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_VECTOR_F64:
		r += decodeVectorF64(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_MSG:
		r += decodeMsgField(buffer, mm, mff);
		break;
	case MAMA_FIELD_TYPE_VECTOR_MSG:
		r += decodeVectorMsg(buffer, mm, mff);
		break;
	default:
		break;
	}

	return r;
}