Hide some public API in VendorManifest and CompatibilityMatrix.

Also changes:
* class -> struct for some classes
* LibVintfTest -> ::android::vintf::LibVintfTest
* VendorManifest::getSupportedVersions uses the new getHal method.

Bug: 34620633
Test: libvintf_test
Change-Id: Icf797676ea5c943b64ac6cf7f6f369e662996de2
diff --git a/parse_xml.cpp b/parse_xml.cpp
index 5f1e2e4..3a3c5bc 100644
--- a/parse_xml.cpp
+++ b/parse_xml.cpp
@@ -300,7 +300,7 @@
 const XmlTextConverter<Transport> transportConverter{"transport"};
 const XmlConverter<Transport> &gTransportConverter = transportConverter;
 
-class MatrixHalConverter : public XmlNodeConverter<MatrixHal> {
+struct MatrixHalConverter : public XmlNodeConverter<MatrixHal> {
     std::string elementName() const override { return "hal"; }
     void mutateNode(const MatrixHal &hal, NodeType *root, DocType *d) const override {
         appendAttr(root, "format", hal.format);
@@ -324,7 +324,7 @@
 const MatrixHalConverter matrixHalConverter{};
 const XmlConverter<MatrixHal> &gMatrixHalConverter = matrixHalConverter;
 
-class MatrixKernelConverter : public XmlNodeConverter<MatrixKernel> {
+struct MatrixKernelConverter : public XmlNodeConverter<MatrixKernel> {
     std::string elementName() const override { return "kernel"; }
     void mutateNode(const MatrixKernel &kernel, NodeType *root, DocType *d) const override {
         appendAttr(root, "version", kernel.version);
@@ -344,7 +344,7 @@
 const MatrixKernelConverter matrixKernelConverter{};
 const XmlConverter<MatrixKernel> &gMatrixKernelConverter = matrixKernelConverter;
 
-class HalImplementationConverter : public XmlNodeConverter<HalImplementation> {
+struct HalImplementationConverter : public XmlNodeConverter<HalImplementation> {
     std::string elementName() const override { return "impl"; }
     void mutateNode(const HalImplementation &impl, NodeType *root, DocType *d) const override {
         appendAttr(root, "level", impl.implLevel);
@@ -362,7 +362,7 @@
 const HalImplementationConverter halImplementationConverter{};
 const XmlConverter<HalImplementation> &gHalImplementationConverter = halImplementationConverter;
 
-class ManifestHalConverter : public XmlNodeConverter<ManifestHal> {
+struct ManifestHalConverter : public XmlNodeConverter<ManifestHal> {
     std::string elementName() const override { return "hal"; }
     void mutateNode(const ManifestHal &hal, NodeType *root, DocType *d) const override {
         appendAttr(root, "format", hal.format);
@@ -389,7 +389,7 @@
 const ManifestHalConverter manifestHalConverter{};
 const XmlConverter<ManifestHal> &gManifestHalConverter = manifestHalConverter;
 
-class SepolicyConverter : public XmlNodeConverter<Sepolicy> {
+struct SepolicyConverter : public XmlNodeConverter<Sepolicy> {
     std::string elementName() const override { return "sepolicy"; }
     void mutateNode(const Sepolicy &, NodeType *, DocType *) const override {
         // TODO after writing sepolicy
@@ -402,7 +402,7 @@
 const SepolicyConverter sepolicyConverter{};
 const XmlConverter<Sepolicy> &gSepolicyConverter = sepolicyConverter;
 
-class VendorManifestConverter : public XmlNodeConverter<VendorManifest> {
+struct VendorManifestConverter : public XmlNodeConverter<VendorManifest> {
     std::string elementName() const override { return "manifest"; }
     void mutateNode(const VendorManifest &m, NodeType *root, DocType *d) const override {
         appendAttr(root, "version", VendorManifest::kVersion);
@@ -425,7 +425,7 @@
 const VendorManifestConverter vendorManifestConverter{};
 const XmlConverter<VendorManifest> &gVendorManifestConverter = vendorManifestConverter;
 
-class CompatibilityMatrixConverter : public XmlNodeConverter<CompatibilityMatrix> {
+struct CompatibilityMatrixConverter : public XmlNodeConverter<CompatibilityMatrix> {
     std::string elementName() const override { return "compatibility-matrix"; }
     void mutateNode(const CompatibilityMatrix &m, NodeType *root, DocType *d) const override {
         appendAttr(root, "version", CompatibilityMatrix::kVersion);