Add a `metadataVersion` field to `ParseRet`, allowing users of this
class to know the metadata version, after successfully parsing a
metadata file.
Change-Id: I5fdeab715d8146744b743c4be1dc9d44ac1a70e6
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/13295
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
parser._mLogger, bt2::Error, "Missing data stream class fragment in metadata stream.");
}
- return {parser.releaseTraceCls(), parser.metadataStreamUuid()};
+ return {parser.releaseTraceCls(), parser.metadataStreamUuid(), MetadataStreamMajorVersion::V2};
}
void Ctf2MetadataStreamParser::_parseSection(const bt2c::ConstBytes buffer)
namespace ctf {
namespace src {
-enum class MetadataStreamMajorVersion
-{
- V1 = 1,
- V2,
-};
-
/*
* Returns the major CTF version (1 or 2) of the metadata stream
* in `buffer`.
namespace ctf {
namespace src {
+enum class MetadataStreamMajorVersion
+{
+ V1 = 1,
+ V2,
+};
+
/*
* Abstract base CTF metadata stream parser class.
*/
{
std::unique_ptr<TraceCls> traceCls;
bt2s::optional<bt2c::Uuid> uuid;
+ MetadataStreamMajorVersion metadataVersion;
};
protected:
Ctf1MetadataStreamParser parser {selfComp, clkClsCfg, parentLogger};
parser.parseSection(buffer);
- return {parser.releaseTraceCls(), parser.metadataStreamUuid()};
+ return {parser.releaseTraceCls(), parser.metadataStreamUuid(), MetadataStreamMajorVersion::V1};
}
} /* namespace src */