cpp-common: Add Blob, StaticBlob, and DynamicBlob FC
This commit copies the implementation of the static and dynamic array
field class wrappers.
The FieldClassType enum size is specified to 64 bits to accommodate for
enumerator value larger than 32 bits. (e.g.
BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB_WITHOUT_LENGTH_FIELD)
Here is the clang++ error
In file included from ../../../../src/cpp-common/bt2/trace-ir.hpp:19:
../../../../src/cpp-common/bt2/field-class.hpp:170:20: error: enumerator value evaluates to
2684354560, which cannot be narrowed to type 'int' [-Wc++11-narrowing]
DynamicBlob = BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB,
^
../../../../src/cpp-common/bt2/field-class.hpp:171:41: error: enumerator value evaluates to
6979321856, which cannot be narrowed to type 'int' [-Wc++11-narrowing]
DynamicBlobWithoutLengthField = BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB_WITHOUT_LENGTH_FIELD,
^
../../../../src/cpp-common/bt2/field-class.hpp:172:38: error: enumerator value evaluates to
11274289152, which cannot be narrowed to type 'int' [-Wc++11-narrowing]
DynamicBlobWithLengthField = BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB_WITH_LENGTH_FIELD,
^
Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Change-Id: I0a8f14e811e80ef71edbe1e20e2cfcfac1df80b3
Reviewed-on: https://review.lttng.org/c/babeltrace/+/7620
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/12703
Tested-by: jenkins <jenkins@lttng.org>
CI-Build: Simon Marchi <simon.marchi@efficios.com>