diff --git a/.github/workflows/cmake-multi-platform.yml b/.github/workflows/cmake-multi-platform.yml index 513299ba..1c0d2ae5 100644 --- a/.github/workflows/cmake-multi-platform.yml +++ b/.github/workflows/cmake-multi-platform.yml @@ -3,9 +3,9 @@ name: CMake Build Multi-Platform on: push: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] pull_request: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] permissions: contents: read @@ -25,6 +25,7 @@ jobs: runs-on: ${{ matrix.os }} permissions: contents: write + checks: write strategy: # Set fail-fast to false to ensure that feedback is delivered for all matrix combinations. Consider changing this to true when your workflow is stable. @@ -83,7 +84,7 @@ jobs: # Export vcpkg Cache Variables - name : Export vcpkg Cache Variables - uses: actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410 # v6.4.1 + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 with: script: | core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); @@ -141,8 +142,21 @@ jobs: - name: CMake Build run: cmake --build --preset ${{matrix.preset}} - - name: CMake Test - run: ctest --preset ${{matrix.preset}} -V + # - name: CMake Test + # id: cmake-test + # run: ctest --test-dir ./out/build/${{matrix.preset}}/OdbDesignTests --output-log ${{github.workspace}}/testlog.txt --output-junit ${{github.workspace}}/testlog.xml -V + # # let the report step fail the job if it finds failed tests + # continue-on-error: true + + # # report test results + # - name: Report Test Results + # uses: dorny/test-reporter@v1.7.0 + # if: ${{steps.cmake-test.outcome}} == 'success' || ${{steps.cmake-test.outcome}} == 'failure' + # with: + # name: ${{ matrix.os }}_test-results + # path: ${{github.workspace}}/testlog.xml + # reporter: java-junit + # fail-on-error: true # # Artifacts @@ -244,7 +258,7 @@ jobs: # create a release - name: "Create GitHub Release" - uses: "actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410" # v6.4.1 + uses: "actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea" # v7.0.1 with: github-token: "${{ secrets.GITHUB_TOKEN }}" script: | diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 3047c5c7..f2949008 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -13,9 +13,9 @@ name: "CodeQL Security Scan" on: push: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] pull_request: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] env: VCPKG_ROOT: ${{ github.workspace }}/vcpkg @@ -47,7 +47,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2.22.5 + uses: github/codeql-action/init@66b90a5db151a8042fa97405c6cf843bbe433f7b # v2.22.7 with: languages: ${{ matrix.language }} config-file: ${{ github.workspace }}/.github/codeql-config.yml @@ -62,7 +62,7 @@ jobs: # Export vcpkg Cache Variables - name : Export vcpkg Cache Variables - uses: actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410 # v6.4.1 + uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 with: script: | core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); @@ -78,6 +78,6 @@ jobs: run: cmake --build --preset linux-release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2.22.5 + uses: github/codeql-action/analyze@66b90a5db151a8042fa97405c6cf843bbe433f7b # v2.22.7 with: category: "/language:${{matrix.language}}" diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml index 0bb334d0..9afafa38 100644 --- a/.github/workflows/dependency-review.yml +++ b/.github/workflows/dependency-review.yml @@ -9,7 +9,7 @@ name: 'Dependency Review' on: pull_request: - branches: [ "main", "release", "development" ] + branches: [ "main", "release", "development", "nam20485" ] permissions: contents: read @@ -24,6 +24,6 @@ jobs: - name: 'Checkout Repository' uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: 'Dependency Review' - uses: actions/dependency-review-action@6c5ccdad469c9f8a2996bfecaec55a631a347034 # v3.1.0 + uses: actions/dependency-review-action@7bbfa034e752445ea40215fff1c3bf9597993d3f # v3.1.3 with: comment-summary-in-pr: true diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 1e96f352..b436470a 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -7,9 +7,9 @@ name: Docker Publish on: push: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] pull_request: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] env: # Use docker.io for Docker Hub if empty @@ -51,7 +51,7 @@ jobs: - name: cosign-installer if: github.event_name != 'pull_request' - uses: sigstore/cosign-installer@v3.1.2 + uses: sigstore/cosign-installer@1fc5bd396d372bee37d608f955b336615edf79c8 # v3.2.0 # Workaround: https://github.com/docker/build-push-action/issues/461 - name: Setup Docker buildx @@ -83,7 +83,7 @@ jobs: # https://github.com/docker/build-push-action - name: Build and push Docker image id: build-and-push - uses: docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09 + uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 with: context: . push: ${{ github.event_name != 'pull_request' }} diff --git a/.github/workflows/docker-scout-scan.yml b/.github/workflows/docker-scout-scan.yml index 768cb9b6..197caa8d 100644 --- a/.github/workflows/docker-scout-scan.yml +++ b/.github/workflows/docker-scout-scan.yml @@ -7,9 +7,9 @@ name: Docker Scout Scan on: push: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] pull_request: - branches: [ "development", "main", "release" ] + branches: [ "development", "main", "release", "nam20485" ] env: # Use docker.io for Docker Hub if empty @@ -38,6 +38,9 @@ jobs: pull-requests: write security-events: write + # don't run on PRs into development from branches that aren't nam20485 (i.e. dependabot PRs) + if: github.event_name != 'pull_request' || github.base_ref != 'development' || github.head_ref == 'nam20485' + steps: - name: Checkout repository uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 @@ -70,8 +73,7 @@ jobs: # Login against Docker Hub to allow running Docker Scout # https://github.com/docker/login-action - - name: Log into Docker Hub registry - # if: github.event_name != 'pull_request' + - name: Log into Docker Hub registry uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d with: username: ${{ secrets.DOCKERHUB_USERNAME }} @@ -92,7 +94,7 @@ jobs: # https://github.com/docker/build-push-action - name: Build and push Docker image id: build-and-push - uses: docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09 + uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 with: context: . push: false @@ -126,7 +128,7 @@ jobs: - name: Analyze for critical and high CVEs id: docker-scout-cves # if: ${{ github.event_name != 'pull_request_target' }} - uses: docker/scout-action@4e9ac4df44fb56797da111fce8185f7fbffd5a09 # v1.0.9 + uses: docker/scout-action@704685e6e6dc4462258fb11d36d3a14ca7bda1e6 # v1.1.0 with: command: cves,recommendations image: ${{ steps.meta.outputs.tags }} @@ -136,14 +138,14 @@ jobs: - name: Upload SARIF result id: upload-sarif - uses: github/codeql-action/upload-sarif@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2.22.5 + uses: github/codeql-action/upload-sarif@66b90a5db151a8042fa97405c6cf843bbe433f7b # v2.22.7 with: sarif_file: sarif.output.json - name: Docker Scout Compare to Latest id: docker-scout if: ${{ github.event_name == 'pull_request' }} - uses: docker/scout-action@4e9ac4df44fb56797da111fce8185f7fbffd5a09 # v1.0.9 + uses: docker/scout-action@704685e6e6dc4462258fb11d36d3a14ca7bda1e6 # v1.1.0 with: command: compare image: ${{ steps.meta.outputs.tags }} diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index e6c8fa11..4c378d45 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -69,6 +69,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2.22.5 + uses: github/codeql-action/upload-sarif@66b90a5db151a8042fa97405c6cf843bbe433f7b # v2.22.7 with: sarif_file: results.sarif diff --git a/.gitignore b/.gitignore index fb182499..8428759e 100644 --- a/.gitignore +++ b/.gitignore @@ -24,7 +24,13 @@ build/ /cmake-build-debug-visual-studio /.idea/workspace.xml ssl/ -Testing/Temporary/ artifacts/ doxygen/docs/ /TEST_DATA +OdbDesignTests/Testing/ +Testing/ +testlog.txt +testlog.txt.tmp* +testlog.xml +/OdbDesignTests/FileArchiveLoadTests_Local.cpp +/OdbDesignTests/DesignNameTests.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index befb28a6..b6c52b6c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,7 +14,9 @@ set(CMAKE_CXX_STANDARD_REQUIRED True) # required for SWIG python wrapper #set(CMAKE_POSITION_INDEPENDENT_CODE ON) +# # GoogleTest support +# include(FetchContent) FetchContent_Declare( googletest @@ -70,8 +72,6 @@ add_subdirectory("OdbDesignTests") # # Doxygen # - -# look for Doxygen package find_package(Doxygen) if (DOXYGEN_FOUND) diff --git a/Dockerfile b/Dockerfile index eabe9300..3e3c3b60 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:bookworm-20231030@sha256:fab22df37377621693c68650b06680c0d8f7c6bf816ec92637944778db3ca2c0 AS build +FROM debian:bookworm-20231120@sha256:133a1f2aa9e55d1c93d0ae1aaa7b94fb141265d0ee3ea677175cdb96f5f990e5 AS build ARG OWNER=nam20485 ARG GITHUB_TOKEN="PASSWORD" @@ -66,7 +66,7 @@ RUN cmake --build --preset linux-release # RUN cmake --build --preset linux-debug # much smaller runtime image -FROM debian:bookworm-20231030-slim@sha256:6cc67f78e0e8295b4fbe055eba0356648f149daf15db9179aa51fcfa9cc131cd AS run +FROM debian:bookworm-20231120-slim@sha256:2bc5c236e9b262645a323e9088dfa3bb1ecb16cc75811daf40a23a824d665be9 AS run LABEL org.opencontainers.image.source=https://github.com/nam20485/OdbDesign LABEL org.opencontainers.image.authors=https://github.com/nam20485 LABEL org.opencontainers.image.description="The OdbDesign Docker image runs the OdbDesignServer REST API server executable, listening on port 8888." diff --git a/Dockerfile (exe) b/Dockerfile (exe) index 43c4b9ce..3bb199c2 100644 --- a/Dockerfile (exe) +++ b/Dockerfile (exe) @@ -1,4 +1,4 @@ -FROM debian:bookworm-20231030-slim@sha256:6cc67f78e0e8295b4fbe055eba0356648f149daf15db9179aa51fcfa9cc131cd AS build +FROM debian:bookworm-20231120-slim@sha256:2bc5c236e9b262645a323e9088dfa3bb1ecb16cc75811daf40a23a824d665be9 AS build # install dependencies RUN apt-get update && \ @@ -52,7 +52,7 @@ RUN cp /src/OdbDesign/out/build/linux-release/OdbDesignLib/libOdbDesign.so ./_Py #RUN python3 -m build # much smaller runtime image -FROM debian:bookworm-20231030-slim@sha256:6cc67f78e0e8295b4fbe055eba0356648f149daf15db9179aa51fcfa9cc131cd AS run +FROM debian:bookworm-20231120-slim@sha256:2bc5c236e9b262645a323e9088dfa3bb1ecb16cc75811daf40a23a824d665be9 AS run RUN mkdir /OdbDesign WORKDIR /OdbDesign diff --git a/Dockerfile_PyOdbDesignServer b/Dockerfile_PyOdbDesignServer index f4e4bbbf..03744fb1 100644 --- a/Dockerfile_PyOdbDesignServer +++ b/Dockerfile_PyOdbDesignServer @@ -1,4 +1,4 @@ -FROM debian:bookworm-20231030-slim@sha256:6cc67f78e0e8295b4fbe055eba0356648f149daf15db9179aa51fcfa9cc131cd AS build +FROM debian:bookworm-20231120-slim@sha256:2bc5c236e9b262645a323e9088dfa3bb1ecb16cc75811daf40a23a824d665be9 AS build # install dependencies RUN apt-get update && \ @@ -44,7 +44,7 @@ RUN cmake --build --preset python-linux-release # much smaller runtime image #FROM python:3.11.4-bullseye AS run -FROM debian:bookworm-20231030-slim@sha256:6cc67f78e0e8295b4fbe055eba0356648f149daf15db9179aa51fcfa9cc131cd as run +FROM debian:bookworm-20231120-slim@sha256:2bc5c236e9b262645a323e9088dfa3bb1ecb16cc75811daf40a23a824d665be9 as run # copy PyOdbDesignServer files COPY --from=build /src/OdbDesign/PyOdbDesignServer PyOdbDesignServer diff --git a/OdbDesignLib/App/OdbAppBase.cpp b/OdbDesignLib/App/OdbAppBase.cpp index 05bf0c73..6f5748f1 100644 --- a/OdbDesignLib/App/OdbAppBase.cpp +++ b/OdbDesignLib/App/OdbAppBase.cpp @@ -39,7 +39,9 @@ namespace Odb::Lib::App { try { - auto pFileArchive = designs().GetFileArchive(args().loadDesign()); + auto pFileArchive = + //designs().GetDesign(args().loadDesign()); + designs().GetFileArchive(args().loadDesign()); if (pFileArchive == nullptr) { logerror("Failed to load design specified in arguments \"" + args().loadDesign() + "\""); diff --git a/OdbDesignLib/CMakeLists.txt b/OdbDesignLib/CMakeLists.txt index 9e64a313..3040733f 100644 --- a/OdbDesignLib/CMakeLists.txt +++ b/OdbDesignLib/CMakeLists.txt @@ -2,7 +2,7 @@ # add_library(OdbDesign SHARED - "odbdesign_export.h" "FileModel/Design/ComponentLayerDirectory.cpp" "FileModel/Design/ComponentLayerDirectory.h" "FileModel/Design/EdaDataFile.cpp" "FileModel/Design/EdaDataFile.h" "FileModel/Design/LayerDirectory.cpp" "FileModel/Design/LayerDirectory.h" "FileModel/Design/NetlistFile.cpp" "FileModel/Design/NetlistFile.h" "FileModel/Design/FileArchive.cpp" "FileModel/Design/FileArchive.h" "FileModel/Design/StepDirectory.cpp" "FileModel/Design/StepDirectory.h" "ProductModel/Net.h" "ProductModel/Net.cpp" "ProductModel/Component.h" "ProductModel/Component.cpp" "ProductModel/Pin.h" "ProductModel/Pin.cpp" "ProductModel/PinConnection.h" "ProductModel/PinConnection.cpp" "ProductModel/Package.h" "ProductModel/Package.cpp" "ProductModel/Part.h" "ProductModel/Part.cpp" "ProductModel/Via.h" "ProductModel/Via.cpp" "ProductModel/Design.h" "ProductModel/Design.cpp" "OdbDesign.h" "App/DesignCache.h" "App/DesignCache.cpp" "win.h" "IProtoBuffable.h" "crow_win.h" "FileModel/OdbFile.h" "FileModel/OdbFile.cpp" "FileModel/OdbFileRecord.h" "FileModel/OdbFileRecord.cpp" "App/IOdbApp.h" "App/IOdbApp.cpp" "App/OdbAppBase.h" "App/OdbAppBase.cpp" "App/RouteController.h" "App/RouteController.cpp" "App/IOdbServerApp.h" "App/OdbServerAppBase.h" "App/OdbServerAppBase.cpp" "App/IOdbServerApp.cpp" + "odbdesign_export.h" "FileModel/Design/ComponentsFile.cpp" "FileModel/Design/ComponentsFile.h" "FileModel/Design/EdaDataFile.cpp" "FileModel/Design/EdaDataFile.h" "FileModel/Design/LayerDirectory.cpp" "FileModel/Design/LayerDirectory.h" "FileModel/Design/NetlistFile.cpp" "FileModel/Design/NetlistFile.h" "FileModel/Design/FileArchive.cpp" "FileModel/Design/FileArchive.h" "FileModel/Design/StepDirectory.cpp" "FileModel/Design/StepDirectory.h" "ProductModel/Net.h" "ProductModel/Net.cpp" "ProductModel/Component.h" "ProductModel/Component.cpp" "ProductModel/Pin.h" "ProductModel/Pin.cpp" "ProductModel/PinConnection.h" "ProductModel/PinConnection.cpp" "ProductModel/Package.h" "ProductModel/Package.cpp" "ProductModel/Part.h" "ProductModel/Part.cpp" "ProductModel/Via.h" "ProductModel/Via.cpp" "ProductModel/Design.h" "ProductModel/Design.cpp" "OdbDesign.h" "App/DesignCache.h" "App/DesignCache.cpp" "win.h" "IProtoBuffable.h" "crow_win.h" "FileModel/OdbFile.h" "FileModel/OdbFile.cpp" "FileModel/OdbFileRecord.h" "FileModel/OdbFileRecord.cpp" "App/IOdbApp.h" "App/IOdbApp.cpp" "App/OdbAppBase.h" "App/OdbAppBase.cpp" "App/RouteController.h" "App/RouteController.cpp" "App/IOdbServerApp.h" "App/OdbServerAppBase.h" "App/OdbServerAppBase.cpp" "App/IOdbServerApp.cpp" FileModel/Design/MatrixFile.cpp FileModel/Design/MatrixFile.h FileModel/Design/MiscInfoFile.cpp @@ -21,7 +21,8 @@ add_library(OdbDesign SHARED "ProtoBuf/miscinfofile.pb.h" "ProtoBuf/miscinfofile.pb.cc" "ProtoBuf/standardfontsfile.pb.h" "ProtoBuf/standardfontsfile.pb.cc" "ProtoBuf/stepdirectory.pb.h" "ProtoBuf/stepdirectory.pb.cc" - "FileModel/parse_error.h" "FileModel/parse_info.h" "FileModel/parse_info.cpp" "FileModel/parse_error.cpp" "FileModel/invalid_odb_error.h" "FileModel/invalid_odb_error.cpp") + "ProtoBuf/enums.pb.h" "ProtoBuf/enums.pb.cc" + "FileModel/parse_error.h" "FileModel/parse_info.h" "FileModel/parse_info.cpp" "FileModel/parse_error.cpp" "FileModel/invalid_odb_error.h" "FileModel/invalid_odb_error.cpp" "ProtoBuf/common.pb.h" "ProtoBuf/common.pb.cc" "ProtoBuf/componentsfile.pb.h" "ProtoBuf/componentsfile.pb.cc" "FileModel/Design/PropertyRecord.h" "FileModel/Design/PropertyRecord.cpp") # disable warning C4250: inheritance by dominance target_compile_options(OdbDesign PUBLIC diff --git a/OdbDesignLib/FileModel/Design/ComponentLayerDirectory.cpp b/OdbDesignLib/FileModel/Design/ComponentsFile.cpp similarity index 75% rename from OdbDesignLib/FileModel/Design/ComponentLayerDirectory.cpp rename to OdbDesignLib/FileModel/Design/ComponentsFile.cpp index 81e5af89..d11a7ae2 100644 --- a/OdbDesignLib/FileModel/Design/ComponentLayerDirectory.cpp +++ b/OdbDesignLib/FileModel/Design/ComponentsFile.cpp @@ -1,4 +1,4 @@ -#include "ComponentLayerDirectory.h" +#include "ComponentsFile.h" #include #include #include @@ -8,19 +8,20 @@ #include #include #include "../invalid_odb_error.h" +#include using namespace std::filesystem; namespace Odb::Lib::FileModel::Design { - ComponentLayerDirectory::ComponentLayerDirectory(std::filesystem::path path, BoardSide side) - : LayerDirectory(path), m_id(0) - , m_side(side) + ComponentsFile::ComponentsFile() + : m_id((unsigned int)-1) + , m_side(BoardSide::Neither) { } - ComponentLayerDirectory::~ComponentLayerDirectory() + ComponentsFile::~ComponentsFile() { m_attributeNames.clear(); m_attributeTextValues.clear(); @@ -28,43 +29,53 @@ namespace Odb::Lib::FileModel::Design m_componentRecordsByName.clear(); } - std::string ComponentLayerDirectory::GetUnits() const + std::string ComponentsFile::GetUnits() const { return m_units; } - BoardSide ComponentLayerDirectory::GetSide() const + BoardSide ComponentsFile::GetSide() const { return m_side; } - const ComponentLayerDirectory::ComponentRecord::Vector& ComponentLayerDirectory::GetComponentRecords() const + std::filesystem::path ComponentsFile::GetPath() + { + return m_path; + } + + std::filesystem::path ComponentsFile::GetDirectory() + { + return m_directory; + } + + const ComponentsFile::ComponentRecord::Vector& ComponentsFile::GetComponentRecords() const { return m_componentRecords; } - const ComponentLayerDirectory::ComponentRecord::StringMap& ComponentLayerDirectory::GetComponentRecordsByName() const + const ComponentsFile::ComponentRecord::StringMap& ComponentsFile::GetComponentRecordsByName() const { return m_componentRecordsByName; } - const std::vector& ComponentLayerDirectory::GetAttributeNames() const + const std::vector& ComponentsFile::GetAttributeNames() const { return m_attributeNames; } - const std::vector& ComponentLayerDirectory::GetAttributeTextValues() const + const std::vector& ComponentsFile::GetAttributeTextValues() const { return m_attributeTextValues; } - ComponentLayerDirectory::ComponentRecord::~ComponentRecord() + ComponentsFile::ComponentRecord::~ComponentRecord() { m_toeprintRecords.clear(); m_propertyRecords.clear(); } - bool ComponentLayerDirectory::Parse() + bool ComponentsFile::Parse(std::filesystem::path directory) { std::ifstream componentsFile; int lineNumber = 0; @@ -72,7 +83,22 @@ namespace Odb::Lib::FileModel::Design try { - if (!LayerDirectory::Parse()) return false; + m_directory = directory; + + auto layerName = m_directory.filename().string(); + if (layerName == TOP_COMPONENTS_LAYER_NAME || + layerName == BOTTOM_COMPONENTS_LAYER_NAME) + { + m_side = layerName == TOP_COMPONENTS_LAYER_NAME ? + BoardSide::Top : + BoardSide::Bottom; + } + + if (m_side == BoardSide::Neither) + { + // not a components layer + return true; + } loginfo("checking for extraction..."); @@ -81,28 +107,30 @@ namespace Odb::Lib::FileModel::Design { loginfo("trying components file: [" + componentsFilename + "]..."); - componentsFilePath = Utils::ArchiveExtractor::getUncompressedFilePath(m_path, componentsFilename); + componentsFilePath = Utils::ArchiveExtractor::getUncompressedFilePath(m_directory, componentsFilename); if (exists(componentsFilePath) && is_regular_file(componentsFilePath)) { loginfo("found components file: [" + componentsFilePath.string() + "]"); break; } - } + } + + m_path = componentsFilePath; loginfo("any extraction complete, parsing data..."); - if (!std::filesystem::exists(componentsFilePath)) + if (!std::filesystem::exists(m_path)) { auto message = "components file does not exist: [" + m_path.string() + "]"; throw invalid_odb_error(message.c_str()); } - else if (!std::filesystem::is_regular_file(componentsFilePath)) + else if (!std::filesystem::is_regular_file(m_path)) { auto message = "components is not a file: [" + m_path.string() + "]"; throw invalid_odb_error(message.c_str()); } - componentsFile.open(componentsFilePath.string(), std::ios::in); + componentsFile.open(m_path.string(), std::ios::in); if (!componentsFile.is_open()) { auto message = "unable to open components file: [" + m_path.string() + "]"; @@ -218,6 +246,13 @@ namespace Odb::Lib::FileModel::Design lineStream >> pCurrentComponentRecord->partName; lineStream >> pCurrentComponentRecord->attributes; + if (m_componentRecords.size() > UINT_MAX) + { + throw_parse_error(m_path, line, token, lineNumber); + } + + pCurrentComponentRecord->index = static_cast(m_componentRecords.size()); + // TODO: parse attributes and id string //std::string strId; //lineStream >> strId; @@ -227,7 +262,7 @@ namespace Odb::Lib::FileModel::Design //pCurrentComponentRecord->id = std::stoul(token); } - else if (line.find(ComponentRecord::PropertyRecord::RECORD_TOKEN) == 0) + else if (line.find(PropertyRecord::RECORD_TOKEN) == 0) { // component property record line std::string token; @@ -236,12 +271,12 @@ namespace Odb::Lib::FileModel::Design throw_parse_error(m_path, line, token, lineNumber); } - if (token != ComponentRecord::PropertyRecord::RECORD_TOKEN) + if (token != PropertyRecord::RECORD_TOKEN) { throw_parse_error(m_path, line, token, lineNumber); } - auto pPropertyRecord = std::make_shared(); + auto pPropertyRecord = std::make_shared(); if (!(lineStream >> pPropertyRecord->name)) { @@ -308,10 +343,34 @@ namespace Odb::Lib::FileModel::Design char mirror; lineStream >> mirror; - pToeprintRecord->mirror = (mirror == 'M'); + pToeprintRecord->mirror = (mirror == 'M' || mirror == 'm'); lineStream >> pToeprintRecord->netNumber; + if (pToeprintRecord->netNumber == (unsigned int)-1) + { + // netNumber == -1 + parse_info pi(m_path, line, lineNumber); + logwarn(pi.toString("Component Toeprint record with netNumber = -1")); + + if (!m_allowToepintNetNumbersOfNegative1) + { + throw_parse_error(m_path, line, token, lineNumber); + } + } + lineStream >> pToeprintRecord->subnetNumber; + if (pToeprintRecord->subnetNumber == (unsigned int)-1) + { + // subnetNumber == -1 + parse_info pi(m_path, line, lineNumber); + logwarn(pi.toString("Component Toeprint record with subnetNumber = -1")); + + if (!m_allowToepintNetNumbersOfNegative1) + { + throw_parse_error(m_path, line, token, lineNumber); + } + } + lineStream >> pToeprintRecord->name; pCurrentComponentRecord->m_toeprintRecords.push_back(pToeprintRecord); diff --git a/OdbDesignLib/FileModel/Design/ComponentLayerDirectory.h b/OdbDesignLib/FileModel/Design/ComponentsFile.h similarity index 52% rename from OdbDesignLib/FileModel/Design/ComponentLayerDirectory.h rename to OdbDesignLib/FileModel/Design/ComponentsFile.h index fcc86ff7..d61a3555 100644 --- a/OdbDesignLib/FileModel/Design/ComponentLayerDirectory.h +++ b/OdbDesignLib/FileModel/Design/ComponentsFile.h @@ -1,23 +1,30 @@ #pragma once -#include "LayerDirectory.h" -#include #include +#include +#include +#include +#include +#include "../../odbdesign_export.h" #include "../../enums.h" +#include "../../IProtoBuffable.h" +#include "PropertyRecord.h" namespace Odb::Lib::FileModel::Design { - class ODBDESIGN_EXPORT ComponentLayerDirectory : public LayerDirectory + class ODBDESIGN_EXPORT ComponentsFile { public: - ComponentLayerDirectory(std::filesystem::path path, BoardSide side); - ~ComponentLayerDirectory(); + ComponentsFile(); + ~ComponentsFile(); - bool Parse() override; + bool Parse(std::filesystem::path directory); std::string GetUnits() const; BoardSide GetSide() const; + std::filesystem::path GetPath(); + std::filesystem::path GetDirectory(); struct ComponentRecord { @@ -34,29 +41,14 @@ namespace Odb::Lib::FileModel::Design std::string attributes; unsigned int id; // TODO: deal with index of records - size_t index; + unsigned int index; // constants - inline static const std::string RECORD_TOKEN = "CMP"; + constexpr inline static const char* RECORD_TOKEN = "CMP"; // typedefs typedef std::map> StringMap; - typedef std::vector> Vector; - - struct PropertyRecord - { - // data members - std::string name; - std::string value; - std::vector floatValues; - - // constants - inline static const std::string RECORD_TOKEN = "PRP"; - - // typedefs - typedef std::map> StringMap; - typedef std::vector> Vector; - }; + typedef std::vector> Vector; struct ToeprintRecord { @@ -71,7 +63,7 @@ namespace Odb::Lib::FileModel::Design std::string name; // pin name // constants - inline static const std::string RECORD_TOKEN = "TOP"; + constexpr inline static const char* RECORD_TOKEN = "TOP"; // typedefs typedef std::map> StringMap; @@ -80,17 +72,23 @@ namespace Odb::Lib::FileModel::Design PropertyRecord::Vector m_propertyRecords; ToeprintRecord::Vector m_toeprintRecords; - }; + }; // ComponentRecord const ComponentRecord::Vector& GetComponentRecords() const; const ComponentRecord::StringMap& GetComponentRecordsByName() const; const std::vector& GetAttributeNames() const; const std::vector& GetAttributeTextValues() const; + constexpr inline static const char* TOP_COMPONENTS_LAYER_NAME = "comp_+_top"; + constexpr inline static const char* BOTTOM_COMPONENTS_LAYER_NAME = "comp_+_bot"; + private: std::string m_units; unsigned int m_id; BoardSide m_side; + std::string m_name; + std::filesystem::path m_path; + std::filesystem::path m_directory; std::vector m_attributeNames; std::vector m_attributeTextValues; @@ -99,27 +97,29 @@ namespace Odb::Lib::FileModel::Design // TODO: add records to maps by name while adding to their vectors ComponentRecord::StringMap m_componentRecordsByName; - inline static const char* COMPONENTS_FILENAMES[] = + const bool m_allowToepintNetNumbersOfNegative1 = true; + + constexpr inline static const char* COMPONENTS_FILENAMES[] = { - "components3", + "components", "components2", - "components" + "components3" }; - inline static const char* UNITS_TOKEN = "UNITS"; - inline static const char* ID_TOKEN = "ID"; - inline static const char* ATTRIBUTE_NAME_TOKEN = "@"; - inline static const char* ATTRIBUTE_VALUE_TOKEN = "&"; - inline static const char* COMMENT_TOKEN = "#"; + constexpr inline static const char* UNITS_TOKEN = "UNITS"; + constexpr inline static const char* ID_TOKEN = "ID"; + constexpr inline static const char* ATTRIBUTE_NAME_TOKEN = "@"; + constexpr inline static const char* ATTRIBUTE_VALUE_TOKEN = "&"; + constexpr inline static const char* COMMENT_TOKEN = "#"; // TODO: deal with BOM DATA section lines later - inline static const char* BOM_DESCR_RECORD_TOKEN_CPN = "CPN"; - inline static const char* BOM_DESCR_RECORD_TOKEN_PKG = "PKG"; - inline static const char* BOM_DESCR_RECORD_TOKEN_IPN = "IPN"; - inline static const char* BOM_DESCR_RECORD_TOKEN_DSC = "DSC"; - inline static const char* BOM_DESCR_RECORD_TOKEN_VPL_VND = "VPL_VND"; - inline static const char* BOM_DESCR_RECORD_TOKEN_VPL_MPN = "VPL_MPN"; - inline static const char* BOM_DESCR_RECORD_TOKEN_VND = "VND"; - inline static const char* BOM_DESCR_RECORD_TOKEN_MPN = "MPN"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_CPN = "CPN"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_PKG = "PKG"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_IPN = "IPN"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_DSC = "DSC"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_VPL_VND = "VPL_VND"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_VPL_MPN = "VPL_MPN"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_VND = "VND"; + constexpr inline static const char* BOM_DESCR_RECORD_TOKEN_MPN = "MPN"; }; } \ No newline at end of file diff --git a/OdbDesignLib/FileModel/Design/EdaDataFile.cpp b/OdbDesignLib/FileModel/Design/EdaDataFile.cpp index 547da12c..72cb5ff5 100644 --- a/OdbDesignLib/FileModel/Design/EdaDataFile.cpp +++ b/OdbDesignLib/FileModel/Design/EdaDataFile.cpp @@ -68,7 +68,7 @@ namespace Odb::Lib::FileModel::Design { pSubnetRecordMessage->set_componentnumber(componentNumber); pSubnetRecordMessage->set_toeprintnumber(toeprintNumber); - pSubnetRecordMessage->set_side((Odb::Lib::Protobuf::EdaDataFile_BoardSide)side); + pSubnetRecordMessage->set_side((Odb::Lib::Protobuf::BoardSide)side); } else if (type == Type::Plane) { @@ -121,17 +121,40 @@ namespace Odb::Lib::FileModel::Design } - std::unique_ptr + std::unique_ptr EdaDataFile::FeatureIdRecord::to_protobuf() const { - std::unique_ptr pFeatureIdRecordMessage(new Odb::Lib::Protobuf::EdaDataFile::NetRecord::SubnetRecord::FeatureIdRecord); - pFeatureIdRecordMessage->set_type((Odb::Lib::Protobuf::EdaDataFile::NetRecord::SubnetRecord::FeatureIdRecord::Type) type); + std::unique_ptr pFeatureIdRecordMessage(new Odb::Lib::Protobuf::EdaDataFile::FeatureIdRecord); + pFeatureIdRecordMessage->set_type((Odb::Lib::Protobuf::EdaDataFile::FeatureIdRecord::Type) type); pFeatureIdRecordMessage->set_layernumber(layerNumber); pFeatureIdRecordMessage->set_featurenumber(featureNumber); return pFeatureIdRecordMessage; } - void EdaDataFile::FeatureIdRecord::from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::NetRecord::SubnetRecord::FeatureIdRecord& message) + void EdaDataFile::FeatureIdRecord::from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::FeatureIdRecord& message) + { + + } + + std::unique_ptr + EdaDataFile::FeatureGroupRecord::to_protobuf() const + { + std::unique_ptr pFeatureGroupRecordMessage(new Odb::Lib::Protobuf::EdaDataFile::FeatureGroupRecord); + pFeatureGroupRecordMessage->set_type(type); + for (const auto& featureIdRecord : m_featureIdRecords) + { + auto pFeatureIdRecordMessage = pFeatureGroupRecordMessage->add_featureidrecords(); + pFeatureIdRecordMessage->CopyFrom(*featureIdRecord->to_protobuf()); + } + for (const auto& propertyRecord : m_propertyRecords) + { + auto pPropertyRecordMessage = pFeatureGroupRecordMessage->add_featureidrecords(); + pPropertyRecordMessage->CopyFrom(*propertyRecord->to_protobuf()); + } + return pFeatureGroupRecordMessage; + } + + void EdaDataFile::FeatureGroupRecord::from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::FeatureGroupRecord& message) { } @@ -176,7 +199,7 @@ namespace Odb::Lib::FileModel::Design return m_featureGroupRecords; } - const EdaDataFile::PropertyRecord::Vector& EdaDataFile::GetPropertyRecords() const + const PropertyRecord::Vector& EdaDataFile::GetPropertyRecords() const { return m_propertyRecords; } @@ -216,7 +239,18 @@ namespace Odb::Lib::FileModel::Design for (const auto& kvPackageRecord : m_packageRecordsByName) { (*pEdaDataFileMessage->mutable_packagerecordsbyname())[kvPackageRecord.first] = *kvPackageRecord.second->to_protobuf(); - } + } + for (const auto& pPropertyRecord : m_propertyRecords) + { + auto pPropertyRecordMessage = pEdaDataFileMessage->add_propertyrecords(); + pPropertyRecordMessage->CopyFrom(*pPropertyRecord->to_protobuf()); + } + for (const auto& pFeatureGroupRecord : m_featureGroupRecords) + { + auto pFeatureGroupRecordMessage = pEdaDataFileMessage->add_featuregrouprecords(); + pFeatureGroupRecordMessage->CopyFrom(*pFeatureGroupRecord->to_protobuf()); + } + return pEdaDataFileMessage; } @@ -484,6 +518,7 @@ namespace Odb::Lib::FileModel::Design // create new net record pCurrentNetRecord = std::make_shared(); pCurrentNetRecord->name = token; + pCurrentNetRecord->index = static_cast(m_netRecords.size()); lineStream >> pCurrentNetRecord->attributesIdString; } @@ -509,6 +544,7 @@ namespace Odb::Lib::FileModel::Design } pCurrentSubnetRecord = std::make_shared(); + pCurrentSubnetRecord->index = static_cast(pCurrentNetRecord->m_subnetRecords.size()); // subnet type lineStream >> token; @@ -700,6 +736,7 @@ namespace Odb::Lib::FileModel::Design } pCurrentPackageRecord = std::make_shared(); + pCurrentPackageRecord->index = static_cast(m_packageRecords.size()); // name if (!(lineStream >> pCurrentPackageRecord->name)) @@ -763,6 +800,7 @@ namespace Odb::Lib::FileModel::Design } pCurrentPinRecord = std::make_shared(); + //pCurrentPinRecord->index = static_cast(pCurrentPackageRecord->m_pinRecords.size()); // name lineStream >> pCurrentPinRecord->name; @@ -1383,25 +1421,7 @@ namespace Odb::Lib::FileModel::Design } return true; - } - - // Inherited via IProtoBuffable - std::unique_ptr - EdaDataFile::PropertyRecord::to_protobuf() const - { - std::unique_ptr pPropertyRecordMessage(new Odb::Lib::Protobuf::EdaDataFile::PropertyRecord); - pPropertyRecordMessage->set_name(name); - pPropertyRecordMessage->set_value(value); - for (const auto& f : floatValues) - { - pPropertyRecordMessage->add_floatvalues(f); - } - return pPropertyRecordMessage; - } - - void EdaDataFile::PropertyRecord::from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::PropertyRecord& message) - { - } + } // Inherited via IProtoBuffable std::unique_ptr diff --git a/OdbDesignLib/FileModel/Design/EdaDataFile.h b/OdbDesignLib/FileModel/Design/EdaDataFile.h index 50993bcc..8c6d7467 100644 --- a/OdbDesignLib/FileModel/Design/EdaDataFile.h +++ b/OdbDesignLib/FileModel/Design/EdaDataFile.h @@ -7,8 +7,10 @@ #include "../../odbdesign_export.h" #include "../../enums.h" #include "../../ProtoBuf/edadatafile.pb.h" +#include "../../ProtoBuf/common.pb.h" #include "google/protobuf/message.h" #include "../../IProtoBuffable.h" +#include "PropertyRecord.h" namespace Odb::Lib::FileModel::Design @@ -25,27 +27,8 @@ namespace Odb::Lib::FileModel::Design const std::string& GetSource() const; bool Parse(std::filesystem::path path); - - struct ODBDESIGN_EXPORT PropertyRecord : public IProtoBuffable - { - // data members - std::string name; - std::string value; - std::vector floatValues; - - // constants - inline static const std::string RECORD_TOKEN = "PRP"; - - // typedefs - typedef std::map> StringMap; - typedef std::vector> Vector; - - // Inherited via IProtoBuffable - std::unique_ptr to_protobuf() const override; - void from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::PropertyRecord& message) override; - }; - - struct ODBDESIGN_EXPORT FeatureIdRecord : public IProtoBuffable + + struct ODBDESIGN_EXPORT FeatureIdRecord : public IProtoBuffable { enum class Type { @@ -61,8 +44,8 @@ namespace Odb::Lib::FileModel::Design unsigned int featureNumber; // Inherited via IProtoBuffable - std::unique_ptr to_protobuf() const override; - void from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::NetRecord::SubnetRecord::FeatureIdRecord& message) override; + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::FeatureIdRecord& message) override; }; struct ODBDESIGN_EXPORT NetRecord : public IProtoBuffable @@ -110,6 +93,7 @@ namespace Odb::Lib::FileModel::Design FillType fillType; CutoutType cutoutType; float fillSize; + unsigned int index; inline static const std::string RECORD_TOKEN = "SNT"; inline static const std::string RECORD_TYPE_TRACE_TOKEN = "TRC"; @@ -131,7 +115,7 @@ namespace Odb::Lib::FileModel::Design std::string name; std::string attributesIdString; // TODO: store index of records - unsigned long index; + unsigned int index; SubnetRecord::Vector m_subnetRecords; PropertyRecord::Vector m_propertyRecords; @@ -309,6 +293,7 @@ namespace Odb::Lib::FileModel::Design float xMin, yMin; float xMax, yMax; std::string attributesIdString; + unsigned int index; OutlineRecord::Vector m_outlineRecords; PinRecord::Vector m_pinRecords; @@ -321,7 +306,7 @@ namespace Odb::Lib::FileModel::Design }; // PackageRecord - struct FeatureGroupRecord + struct FeatureGroupRecord : public IProtoBuffable { ~FeatureGroupRecord() { @@ -335,7 +320,11 @@ namespace Odb::Lib::FileModel::Design FeatureIdRecord::Vector m_featureIdRecords; typedef std::shared_ptr shared_ptr; - typedef std::vector Vector; + typedef std::vector Vector; + + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::EdaDataFile::FeatureGroupRecord& message) override; }; // FeatureGroupRecord diff --git a/OdbDesignLib/FileModel/Design/FileArchive.cpp b/OdbDesignLib/FileModel/Design/FileArchive.cpp index ba541d13..4e47a478 100644 --- a/OdbDesignLib/FileModel/Design/FileArchive.cpp +++ b/OdbDesignLib/FileModel/Design/FileArchive.cpp @@ -1,6 +1,8 @@ #include "FileArchive.h" #include "FileArchive.h" #include "FileArchive.h" +#include "FileArchive.h" +#include "FileArchive.h" #include #include "ArchiveExtractor.h" #include "MiscInfoFile.h" @@ -150,6 +152,24 @@ namespace Odb::Lib::FileModel::Design return true; } + std::unique_ptr FileArchive::to_protobuf() const + { + std::unique_ptr pFileArchiveMessage(new Odb::Lib::Protobuf::FileArchive); + pFileArchiveMessage->mutable_matrixfile()->CopyFrom(*m_matrixFile.to_protobuf()); + pFileArchiveMessage->mutable_miscinfofile()->CopyFrom(*m_miscInfoFile.to_protobuf()); + + for (const auto& kvStepDirectoryRecord : m_stepsByName) + { + (*pFileArchiveMessage->mutable_stepsbyname())[kvStepDirectoryRecord.first] = *kvStepDirectoryRecord.second->to_protobuf(); + } + + return pFileArchiveMessage; + } + + void FileArchive::from_protobuf(const Odb::Lib::Protobuf::FileArchive& message) + { + } + bool FileArchive::ParseDesignDirectory(const std::filesystem::path& path) { if (!exists(path)) return false; diff --git a/OdbDesignLib/FileModel/Design/FileArchive.h b/OdbDesignLib/FileModel/Design/FileArchive.h index 25d510d0..f4d10fd0 100644 --- a/OdbDesignLib/FileModel/Design/FileArchive.h +++ b/OdbDesignLib/FileModel/Design/FileArchive.h @@ -11,11 +11,13 @@ #include "MatrixFile.h" #include "StandardFontsFile.h" #include +#include "../../IProtoBuffable.h" +#include "../../ProtoBuf/filearchive.pb.h" namespace Odb::Lib::FileModel::Design { - class ODBDESIGN_EXPORT FileArchive + class ODBDESIGN_EXPORT FileArchive : public IProtoBuffable { public: FileArchive(std::string path); @@ -62,6 +64,10 @@ namespace Odb::Lib::FileModel::Design static std::string findRootDir(const std::filesystem::path& extractedPath); static bool pathContainsTopLevelDesignDirs(const std::filesystem::path& path); + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::FileArchive& message) override; + static inline constexpr const char* TOPLEVEL_DESIGN_DIR_NAMES[] = { "fonts", @@ -91,5 +97,5 @@ namespace Odb::Lib::FileModel::Design //the file misc / info of the product model.If the default is not defined for the product model, the //default is imperial. - }; + }; } diff --git a/OdbDesignLib/FileModel/Design/LayerDirectory.cpp b/OdbDesignLib/FileModel/Design/LayerDirectory.cpp index 01ad488e..dad0dc43 100644 --- a/OdbDesignLib/FileModel/Design/LayerDirectory.cpp +++ b/OdbDesignLib/FileModel/Design/LayerDirectory.cpp @@ -1,4 +1,7 @@ #include "LayerDirectory.h" +#include "LayerDirectory.h" +#include "LayerDirectory.h" +#include "LayerDirectory.h" #include "Logger.h" namespace Odb::Lib::FileModel::Design @@ -24,10 +27,32 @@ namespace Odb::Lib::FileModel::Design bool LayerDirectory::Parse() { - m_name = m_path.filename().string(); + if (!std::filesystem::exists(m_path)) return false; + else if (!std::filesystem::is_directory(m_path)) return false; + + m_name = std::filesystem::path(m_path).filename().string(); + + loginfo("Parsing layer directory: " + m_name + "..."); + + if (!ParseComponentsFile(m_path)) return false; + if (!ParseFeaturesFile(m_path)) return false; + + loginfo("Parsing layer directory: " + m_name + " complete"); + + return true; + } - loginfo("Parsing layer: " + m_name + "..."); + bool Odb::Lib::FileModel::Design::LayerDirectory::ParseComponentsFile(std::filesystem::path directory) + { + return m_componentsFile.Parse(directory); + } + bool Odb::Lib::FileModel::Design::LayerDirectory::ParseFeaturesFile(std::filesystem::path directory) + { return true; } + const ComponentsFile& Odb::Lib::FileModel::Design::LayerDirectory::GetComponentsFile() const + { + return m_componentsFile; + } } \ No newline at end of file diff --git a/OdbDesignLib/FileModel/Design/LayerDirectory.h b/OdbDesignLib/FileModel/Design/LayerDirectory.h index 835c5969..24e97a4e 100644 --- a/OdbDesignLib/FileModel/Design/LayerDirectory.h +++ b/OdbDesignLib/FileModel/Design/LayerDirectory.h @@ -5,6 +5,7 @@ #include #include #include "../../odbdesign_export.h" +#include "ComponentsFile.h" namespace Odb::Lib::FileModel::Design @@ -13,21 +14,26 @@ namespace Odb::Lib::FileModel::Design { public: LayerDirectory(std::filesystem::path path); - virtual ~LayerDirectory(); - - inline static const std::string TOP_COMPONENTS_LAYER_NAME = "comp_+_top"; - inline static const std::string BOTTOM_COMPONENTS_LAYER_NAME = "comp_+_bot"; + virtual ~LayerDirectory(); std::string GetName() const; std::filesystem::path GetPath() const; virtual bool Parse(); + bool ParseComponentsFile(std::filesystem::path directory); + bool ParseFeaturesFile(std::filesystem::path directory); + + const ComponentsFile& GetComponentsFile() const; + typedef std::map> StringMap; protected: // TODO: do subclasses really need access to these (private instead)? std::string m_name; std::filesystem::path m_path; + private: + ComponentsFile m_componentsFile; + }; } \ No newline at end of file diff --git a/OdbDesignLib/FileModel/Design/MatrixFile.cpp b/OdbDesignLib/FileModel/Design/MatrixFile.cpp index c01584c7..a6f4236c 100644 --- a/OdbDesignLib/FileModel/Design/MatrixFile.cpp +++ b/OdbDesignLib/FileModel/Design/MatrixFile.cpp @@ -1,12 +1,8 @@ -#include "MatrixFile.h" -#include "MatrixFile.h" -#include "MatrixFile.h" -#include "MatrixFile.h" -#include "MatrixFile.h" // // Created by nmill on 10/13/2023. // +#include "../../crow_win.h" #include "MatrixFile.h" #include #include "str_trim.h" @@ -16,6 +12,7 @@ #include "../parse_error.h" #include #include "../invalid_odb_error.h" +#include "../../ProtoBuf/enums.pb.h" namespace Odb::Lib::FileModel::Design { @@ -435,4 +432,69 @@ namespace Odb::Lib::FileModel::Design } return false; } + + std::unique_ptr Odb::Lib::FileModel::Design::MatrixFile::to_protobuf() const + { + std::unique_ptr pMatrixFileMessage(new Odb::Lib::Protobuf::MatrixFile); + for (const auto& stepRecord : m_stepRecords) + { + auto pStepRecordMessage = pMatrixFileMessage->add_steps(); + pStepRecordMessage->CopyFrom(*stepRecord->to_protobuf()); + } + for (const auto& layerRecord : m_layerRecords) + { + auto pLayerRecordMessage = pMatrixFileMessage->add_layers(); + pLayerRecordMessage->CopyFrom(*layerRecord->to_protobuf()); + } + return pMatrixFileMessage; + + } + + void Odb::Lib::FileModel::Design::MatrixFile::from_protobuf(const Odb::Lib::Protobuf::MatrixFile& message) + { + } + + std::unique_ptr Odb::Lib::FileModel::Design::MatrixFile::StepRecord::to_protobuf() const + { + std::unique_ptr pStepRecordMessage(new Odb::Lib::Protobuf::MatrixFile::StepRecord); + pStepRecordMessage->set_column(column); + pStepRecordMessage->set_name(name); + pStepRecordMessage->set_id(id); + return pStepRecordMessage; + } + + void Odb::Lib::FileModel::Design::MatrixFile::StepRecord::from_protobuf(const Odb::Lib::Protobuf::MatrixFile::StepRecord& message) + { + } + + std::unique_ptr Odb::Lib::FileModel::Design::MatrixFile::LayerRecord::to_protobuf() const + { + std::unique_ptr pLayerRecordMessage(new Odb::Lib::Protobuf::MatrixFile::LayerRecord); + pLayerRecordMessage->set_addtype(addType); + pLayerRecordMessage->set_context(static_cast(context)); + pLayerRecordMessage->set_cubottom(cuBottom); + pLayerRecordMessage->set_cutop(cuTop); + pLayerRecordMessage->set_dielectricname(dielectricName); + pLayerRecordMessage->set_dielectrictype(static_cast(dielectricType)); + pLayerRecordMessage->set_endname(endName); + pLayerRecordMessage->set_form(static_cast(form)); + pLayerRecordMessage->set_id(id); + pLayerRecordMessage->set_name(name); + pLayerRecordMessage->set_oldname(oldName); + pLayerRecordMessage->set_polarity(static_cast(polarity)); + pLayerRecordMessage->set_ref(ref); + pLayerRecordMessage->set_row(row); + pLayerRecordMessage->set_startname(startName); + pLayerRecordMessage->set_type(static_cast(type)); + //pLayerRecordMessage->mutable_color()->set_r(color.r); + //pLayerRecordMessage->mutable_color()->set_g(color.g); + //pLayerRecordMessage->mutable_color()->set_b(color.b); + + + return pLayerRecordMessage; + } + + void Odb::Lib::FileModel::Design::MatrixFile::LayerRecord::from_protobuf(const Odb::Lib::Protobuf::MatrixFile::LayerRecord& message) + { + } } \ No newline at end of file diff --git a/OdbDesignLib/FileModel/Design/MatrixFile.h b/OdbDesignLib/FileModel/Design/MatrixFile.h index 71ddab13..2bca5e8f 100644 --- a/OdbDesignLib/FileModel/Design/MatrixFile.h +++ b/OdbDesignLib/FileModel/Design/MatrixFile.h @@ -10,17 +10,19 @@ #include #include "RgbColor.h" #include "../../enums.h" +#include "../../IProtoBuffable.h" +#include "../../ProtoBuf/matrixfile.pb.h" namespace Odb::Lib::FileModel::Design { - class MatrixFile : public OdbFile + class MatrixFile : public OdbFile, public IProtoBuffable { public: MatrixFile() = default; ~MatrixFile() = default; - struct StepRecord + struct StepRecord : public IProtoBuffable { unsigned int column; unsigned int id = (unsigned int) -1; @@ -29,9 +31,13 @@ namespace Odb::Lib::FileModel::Design typedef std::vector> Vector; inline static const char* RECORD_TOKEN = "STEP"; + + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::MatrixFile::StepRecord& message) override; }; - struct LayerRecord + struct LayerRecord : public IProtoBuffable { enum class Type { @@ -67,9 +73,7 @@ namespace Odb::Lib::FileModel::Design { Rigid, Flex - }; - - + }; typedef std::vector> Vector; @@ -93,6 +97,9 @@ namespace Odb::Lib::FileModel::Design inline static const char* RECORD_TOKEN = "LAYER"; + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::MatrixFile::LayerRecord& message) override; }; const inline LayerRecord::Vector& GetLayerRecords() const; @@ -103,6 +110,10 @@ namespace Odb::Lib::FileModel::Design static inline bool attributeValueIsOptional(const std::string& attribute); + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::MatrixFile& message) override; + private: LayerRecord::Vector m_layerRecords; StepRecord::Vector m_stepRecords; @@ -118,12 +129,12 @@ namespace Odb::Lib::FileModel::Design "ADD_TYPE", "ID", "DIELECTRIC_TYPE", - "DIELECTRIC_NAME" + "DIELECTRIC_NAME", "FORM", "CU_TOP", "CU_BOTTOM", "REF", "COLOR", - }; + }; }; } diff --git a/OdbDesignLib/FileModel/Design/MiscInfoFile.cpp b/OdbDesignLib/FileModel/Design/MiscInfoFile.cpp index fb1de5aa..4b1da37b 100644 --- a/OdbDesignLib/FileModel/Design/MiscInfoFile.cpp +++ b/OdbDesignLib/FileModel/Design/MiscInfoFile.cpp @@ -1,8 +1,8 @@ -#include "MiscInfoFile.h" // // Created by nmill on 10/13/2023. // +#include "../../crow_win.h" #include #include "MiscInfoFile.h" #include @@ -204,6 +204,31 @@ namespace Odb::Lib::FileModel::Design return false; } + std::unique_ptr MiscInfoFile::to_protobuf() const + { + std::unique_ptr pMiscInfoFileMessage(new Odb::Lib::Protobuf::MiscInfoFile); + pMiscInfoFileMessage->set_jobname(m_jobName); + pMiscInfoFileMessage->set_productmodelname(m_productModelName); + pMiscInfoFileMessage->set_odbversionmajor(m_odbVersionMajor); + pMiscInfoFileMessage->set_odbversionminor(m_odbVersionMinor); + pMiscInfoFileMessage->set_odbsource(m_odbSource); + auto seconds = std::chrono::duration_cast(m_creationDateDate.time_since_epoch()).count(); + pMiscInfoFileMessage->mutable_creationdatedate()->set_seconds(seconds); + pMiscInfoFileMessage->mutable_creationdatedate()->set_nanos(0); + seconds = std::chrono::duration_cast(m_saveDate.time_since_epoch()).count(); + pMiscInfoFileMessage->mutable_savedate()->set_seconds(seconds); + pMiscInfoFileMessage->mutable_savedate()->set_nanos(0); + pMiscInfoFileMessage->set_saveapp(m_saveApp); + pMiscInfoFileMessage->set_saveuser(m_saveUser); + pMiscInfoFileMessage->set_units(m_units); + pMiscInfoFileMessage->set_maxuniqueid(m_maxUniqueId); + return pMiscInfoFileMessage; + } + + void MiscInfoFile::from_protobuf(const Odb::Lib::Protobuf::MiscInfoFile& message) + { + } + std::string MiscInfoFile::GetProductModelName() const { return m_productModelName; diff --git a/OdbDesignLib/FileModel/Design/MiscInfoFile.h b/OdbDesignLib/FileModel/Design/MiscInfoFile.h index 0de9b20b..fc871ceb 100644 --- a/OdbDesignLib/FileModel/Design/MiscInfoFile.h +++ b/OdbDesignLib/FileModel/Design/MiscInfoFile.h @@ -4,13 +4,15 @@ #include "../OdbFile.h" #include +#include "../../IProtoBuffable.h" +#include "../../ProtoBuf/miscinfofile.pb.h" #pragma once namespace Odb::Lib::FileModel::Design { - class MiscInfoFile : public OdbFile + class MiscInfoFile : public OdbFile, public IProtoBuffable { public: MiscInfoFile() = default; @@ -30,6 +32,10 @@ namespace Odb::Lib::FileModel::Design bool Parse(std::filesystem::path path) override; + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::MiscInfoFile& message) override; + private: std::string m_productModelName; std::string m_jobName; @@ -49,6 +55,6 @@ namespace Odb::Lib::FileModel::Design { //"ODB_SOURCE", // not optional per spec pg. 80 "MAX_UID", - }; + }; }; } diff --git a/OdbDesignLib/FileModel/Design/PropertyRecord.cpp b/OdbDesignLib/FileModel/Design/PropertyRecord.cpp new file mode 100644 index 00000000..e586683c --- /dev/null +++ b/OdbDesignLib/FileModel/Design/PropertyRecord.cpp @@ -0,0 +1,22 @@ +#include "PropertyRecord.h" + +namespace Odb::Lib::FileModel::Design +{ + // Inherited via IProtoBuffable + std::unique_ptr + PropertyRecord::to_protobuf() const + { + std::unique_ptr pPropertyRecordMessage(new Odb::Lib::Protobuf::PropertyRecord); + pPropertyRecordMessage->set_name(name); + pPropertyRecordMessage->set_value(value); + for (const auto& f : floatValues) + { + pPropertyRecordMessage->add_floatvalues(f); + } + return pPropertyRecordMessage; + } + + void PropertyRecord::from_protobuf(const Odb::Lib::Protobuf::PropertyRecord& message) + { + } +} \ No newline at end of file diff --git a/OdbDesignLib/FileModel/Design/PropertyRecord.h b/OdbDesignLib/FileModel/Design/PropertyRecord.h new file mode 100644 index 00000000..4ae7b81c --- /dev/null +++ b/OdbDesignLib/FileModel/Design/PropertyRecord.h @@ -0,0 +1,31 @@ +#pragma once + +#include +#include +#include +#include +#include "../../odbdesign_export.h" +#include "../../IProtoBuffable.h" +#include "../../ProtoBuf/common.pb.h" + +namespace Odb::Lib::FileModel::Design +{ + struct ODBDESIGN_EXPORT PropertyRecord : public IProtoBuffable + { + // data members + std::string name; + std::string value; + std::vector floatValues; + + // constants + constexpr inline static const char* RECORD_TOKEN = "PRP"; + + // typedefs + typedef std::map> StringMap; + typedef std::vector> Vector; + + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::PropertyRecord& message) override; + }; +} diff --git a/OdbDesignLib/FileModel/Design/StepDirectory.cpp b/OdbDesignLib/FileModel/Design/StepDirectory.cpp index cf66c298..789dad15 100644 --- a/OdbDesignLib/FileModel/Design/StepDirectory.cpp +++ b/OdbDesignLib/FileModel/Design/StepDirectory.cpp @@ -1,7 +1,8 @@ #include "StepDirectory.h" +#include "StepDirectory.h" +#include "StepDirectory.h" #include #include "LayerDirectory.h" -#include "ComponentLayerDirectory.h" #include #include #include "Logger.h" @@ -67,22 +68,7 @@ namespace Odb::Lib::FileModel::Design { if (std::filesystem::is_directory(d)) { - std::shared_ptr pLayer; - - auto layerName = d.path().filename().string(); - if (layerName == LayerDirectory::TOP_COMPONENTS_LAYER_NAME || - layerName == LayerDirectory::BOTTOM_COMPONENTS_LAYER_NAME) - { - auto boardSide = layerName == LayerDirectory::TOP_COMPONENTS_LAYER_NAME ? - BoardSide::Top : - BoardSide::Bottom; - pLayer = std::make_shared(d.path(), boardSide); - } - else - { - pLayer = std::make_shared(d.path()); - } - + auto pLayer = std::make_shared(d.path()); if (pLayer->Parse()) { loginfo("Parsing layer: " + pLayer->GetName() + " complete"); @@ -116,6 +102,26 @@ namespace Odb::Lib::FileModel::Design return success; } + std::unique_ptr StepDirectory::to_protobuf() const + { + std::unique_ptr pStepDirectoryMessage(new Odb::Lib::Protobuf::StepDirectory); + pStepDirectoryMessage->set_name(m_name); + pStepDirectoryMessage->set_path(m_path.string()); + pStepDirectoryMessage->mutable_edadatafile()->CopyFrom(*m_edaData.to_protobuf()); + + // TODO: netlistfiles + //m_netlistsByName + + // TODO: layer directories + //m_layersByName + + return pStepDirectoryMessage; + } + + void StepDirectory::from_protobuf(const Odb::Lib::Protobuf::StepDirectory& message) + { + } + bool StepDirectory::ParseNetlistFiles(std::filesystem::path netlistsPath) { loginfo("Parsing netlist files..."); @@ -160,12 +166,12 @@ namespace Odb::Lib::FileModel::Design return true; } - std::shared_ptr StepDirectory::GetTopComponentLayerDir() const + const ComponentsFile* StepDirectory::GetTopComponentsFile() const { - auto findIt = m_layersByName.find(LayerDirectory::TOP_COMPONENTS_LAYER_NAME); + auto findIt = m_layersByName.find(ComponentsFile::TOP_COMPONENTS_LAYER_NAME); if (findIt != m_layersByName.end()) { - return std::dynamic_pointer_cast(findIt->second); + return &(findIt->second->GetComponentsFile()); } else { @@ -173,12 +179,12 @@ namespace Odb::Lib::FileModel::Design } } - std::shared_ptr StepDirectory::GetBottomComponentLayerDir() const + const ComponentsFile* StepDirectory::GetBottomComponentsFile() const { - auto findIt = m_layersByName.find(LayerDirectory::BOTTOM_COMPONENTS_LAYER_NAME); + auto findIt = m_layersByName.find(ComponentsFile::BOTTOM_COMPONENTS_LAYER_NAME); if (findIt != m_layersByName.end()) { - return std::dynamic_pointer_cast(findIt->second); + return &(findIt->second->GetComponentsFile()); } else { diff --git a/OdbDesignLib/FileModel/Design/StepDirectory.h b/OdbDesignLib/FileModel/Design/StepDirectory.h index cd0e6f3e..ca30ed5f 100644 --- a/OdbDesignLib/FileModel/Design/StepDirectory.h +++ b/OdbDesignLib/FileModel/Design/StepDirectory.h @@ -7,15 +7,17 @@ #include "../../odbdesign_export.h" #include "../../win.h" -#include "ComponentLayerDirectory.h" #include "LayerDirectory.h" #include "EdaDataFile.h" #include "NetlistFile.h" +#include "../../IProtoBuffable.h" +#include "../../ProtoBuf/stepdirectory.pb.h" +#include "ComponentsFile.h" namespace Odb::Lib::FileModel::Design { - class ODBDESIGN_EXPORT StepDirectory + class ODBDESIGN_EXPORT StepDirectory : public IProtoBuffable { public: StepDirectory(std::filesystem::path path); @@ -28,13 +30,17 @@ namespace Odb::Lib::FileModel::Design const LayerDirectory::StringMap& GetLayersByName() const; const NetlistFile::StringMap& GetNetlistsByName() const; - std::shared_ptr GetTopComponentLayerDir() const; - std::shared_ptr GetBottomComponentLayerDir() const; + const ComponentsFile* GetTopComponentsFile() const; + const ComponentsFile* GetBottomComponentsFile() const; bool Parse(); typedef std::map> StringMap; + // Inherited via IProtoBuffable + std::unique_ptr to_protobuf() const override; + void from_protobuf(const Odb::Lib::Protobuf::StepDirectory& message) override; + private: std::string m_name; std::filesystem::path m_path; @@ -46,7 +52,7 @@ namespace Odb::Lib::FileModel::Design bool ParseLayerFiles(std::filesystem::path layersPath); bool ParseNetlistFiles(std::filesystem::path netlistsPath); bool ParseEdaDataFiles(std::filesystem::path edaPath); - + }; } diff --git a/OdbDesignLib/FileModel/parse_info.cpp b/OdbDesignLib/FileModel/parse_info.cpp index 35251296..978c349c 100644 --- a/OdbDesignLib/FileModel/parse_info.cpp +++ b/OdbDesignLib/FileModel/parse_info.cpp @@ -14,7 +14,7 @@ namespace Odb::Lib::FileModel if (!dataFile.empty() || !dataLine.empty() || !dataToken.empty()) { - ss << "current file: [" << dataFile.filename().string() << ":" << dataLineNumber << "]" << std::endl + ss << "current file: [" << dataFile.relative_path().string() << ":" << dataLineNumber << "]" << std::endl << "current line: [" << dataLine << "]" << std::endl << "current token: [" << dataToken << "]"; } diff --git a/OdbDesignLib/IProtoBuffable.h b/OdbDesignLib/IProtoBuffable.h index 2b5de625..6a9948b5 100644 --- a/OdbDesignLib/IProtoBuffable.h +++ b/OdbDesignLib/IProtoBuffable.h @@ -2,9 +2,12 @@ #include #include +#include "crow_win.h" #include #include "IJsonable.h" #include "odbdesign_export.h" +#include +#include namespace Odb::Lib @@ -16,9 +19,17 @@ namespace Odb::Lib virtual std::unique_ptr to_protobuf() const = 0; virtual void from_protobuf(const TPbMessage& message) = 0; + // to and from Protocol Buffer string + bool to_pbstring(std::string& pb_string) const; + bool from_pbstring(const std::string& pb_string); + + // to and from output and input streams + bool serializeTo(std::ostream& outputStream) const; + bool parseFrom(std::istream& inputSream); + // Inherited via IJsonConvertable std::string to_json() const override; - void from_json(const std::string& json) override; + void from_json(const std::string& json) override; protected: // abstract class @@ -30,6 +41,40 @@ namespace Odb::Lib }; + template + inline bool IProtoBuffable::to_pbstring(std::string& pb_string) const + { + auto pMessage = to_protobuf(); + if (pMessage == nullptr) return false; + return pMessage->SerializeToString(&pb_string); + } + + template + inline bool IProtoBuffable::from_pbstring(const std::string& pb_string) + { + auto pMessage = std::unique_ptr(); + if (!pMessage->ParseFromString(pb_string)) return false; + from_protobuf(*pMessage); + return true; + } + + template + inline bool IProtoBuffable::serializeTo(std::ostream& outputStream) const + { + auto pMessage = to_protobuf(); + if (pMessage == nullptr) return false; + return pMessage->SerializeToOstream(&outputStream); + } + + template + inline bool IProtoBuffable::parseFrom(std::istream& inputSream) + { + auto pMessage = std::unique_ptr(); + if (!pMessage->ParseFromIstream(&inputSream)) return false; + from_protobuf(*pMessage); + return true; + } + template std::string IProtoBuffable::to_json() const { diff --git a/OdbDesignLib/ProductModel/Design.cpp b/OdbDesignLib/ProductModel/Design.cpp index 0f18d16b..250cf106 100644 --- a/OdbDesignLib/ProductModel/Design.cpp +++ b/OdbDesignLib/ProductModel/Design.cpp @@ -1,5 +1,6 @@ #include "Design.h" #include "Package.h" +#include "Logger.h" namespace Odb::Lib::ProductModel { @@ -49,26 +50,26 @@ namespace Odb::Lib::ProductModel auto& pStepDirectory = steps.begin()->second; // top components layer - auto pTopComponentsLayerDir = pStepDirectory->GetTopComponentLayerDir(); - if (pTopComponentsLayerDir != nullptr) return false; - if (! BuildLayerComponents(pTopComponentsLayerDir)) return false; + auto pTopComponentsFile = pStepDirectory->GetTopComponentsFile(); + if (pTopComponentsFile == nullptr) return false; + if (! BuildLayerComponents(pTopComponentsFile)) return false; // bottom layer components - auto pBottomComponentsLayerDir = pStepDirectory->GetBottomComponentLayerDir(); - if (pBottomComponentsLayerDir == nullptr) return false; - if (!BuildLayerComponents(pBottomComponentsLayerDir)) return false; + auto pBottomComponentsFile = pStepDirectory->GetBottomComponentsFile(); + if (pBottomComponentsFile == nullptr) return false; + if (!BuildLayerComponents(pBottomComponentsFile)) return false; return true; } - bool Design::BuildLayerComponents(std::shared_ptr& pComponentsLayerDir) + bool Design::BuildLayerComponents(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile) { - const auto& componentRecords = pComponentsLayerDir->GetComponentRecords(); + const auto& componentRecords = pComponentsFile->GetComponentRecords(); for (const auto& pComponentRecord : componentRecords) { auto& pPackage = m_packages[pComponentRecord->pkgRef]; - auto index = static_cast(m_components.size()); - auto pComponent = std::make_shared(pComponentRecord->compName, pComponentRecord->partName, pPackage, index, pComponentsLayerDir->GetSide()); + auto index = pComponentRecord->index; + auto pComponent = std::make_shared(pComponentRecord->compName, pComponentRecord->partName, pPackage, index, pComponentsFile->GetSide()); m_components.push_back(pComponent); m_componentsByName[pComponent->GetRefDes()] = pComponent; @@ -90,7 +91,7 @@ namespace Odb::Lib::ProductModel for (const auto& pNetRecord : netRecords) { - auto pNet = std::make_shared(pNetRecord->name, static_cast(m_nets.size())); + auto pNet = std::make_shared(pNetRecord->name, pNetRecord->index); m_nets.push_back(pNet); m_netsByName[pNet->GetName()] = pNet; } @@ -111,7 +112,8 @@ namespace Odb::Lib::ProductModel for (const auto& pPackageRecord : packageRecords) { - auto pPackage = std::make_shared(pPackageRecord->name, static_cast(m_packages.size())); + auto index = pPackageRecord->index; + auto pPackage = std::make_shared(pPackageRecord->name, index); for (const auto& pPinRecord : pPackageRecord->m_pinRecords) { @@ -135,20 +137,20 @@ namespace Odb::Lib::ProductModel auto& pStepDirectory = steps.begin()->second; - auto pTopComponentsLayerDir = pStepDirectory->GetTopComponentLayerDir(); - if (pTopComponentsLayerDir == nullptr) return false; - if (! BuildLayerParts(pTopComponentsLayerDir)) return false; + auto pTopComponentsFile = pStepDirectory->GetTopComponentsFile(); + if (pTopComponentsFile == nullptr) return false; + if (! BuildLayerParts(pTopComponentsFile)) return false; - auto pBottomComponentsLayerDir = pStepDirectory->GetBottomComponentLayerDir(); - if (pBottomComponentsLayerDir == nullptr) return false; - if (!BuildLayerParts(pBottomComponentsLayerDir)) return false; + auto pBottomComponentsFile = pStepDirectory->GetBottomComponentsFile(); + if (pBottomComponentsFile == nullptr) return false; + if (!BuildLayerParts(pBottomComponentsFile)) return false; return true; } - bool Design::BuildLayerParts(std::shared_ptr& pComponentsLayerDir) + bool Design::BuildLayerParts(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile) { - const auto& componentRecords = pComponentsLayerDir->GetComponentRecords(); + const auto& componentRecords = pComponentsFile->GetComponentRecords(); for (const auto& pComponentRecord : componentRecords) { auto& partName = pComponentRecord->partName; @@ -172,40 +174,47 @@ namespace Odb::Lib::ProductModel auto& pStepDirectory = steps.begin()->second; - auto pTopComponentsLayerDir = pStepDirectory->GetTopComponentLayerDir(); - if (pTopComponentsLayerDir == nullptr) return false; - if (! BuildLayerPlacements(pTopComponentsLayerDir)) return false; + auto pTopComponentsFile = pStepDirectory->GetTopComponentsFile(); + if (pTopComponentsFile == nullptr) return false; + if (! BuildLayerPlacements(pTopComponentsFile)) return false; - auto pBottomComponentsLayerDir = pStepDirectory->GetBottomComponentLayerDir(); - if (pBottomComponentsLayerDir == nullptr) return false; - if (!BuildLayerPlacements(pBottomComponentsLayerDir)) return false; + auto pBottomComponentsFile = pStepDirectory->GetBottomComponentsFile(); + if (pBottomComponentsFile == nullptr) return false; + if (!BuildLayerPlacements(pBottomComponentsFile)) return false; return true; } - bool Design::BuildLayerPlacements(std::shared_ptr& pComponentsLayerDir) + bool Design::BuildLayerPlacements(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile) { - const auto& componentRecords = pComponentsLayerDir->GetComponentRecords(); + const auto& componentRecords = pComponentsFile->GetComponentRecords(); for (const auto& pComponentRecord : componentRecords) { const auto& toeprintRecords = pComponentRecord->m_toeprintRecords; for (const auto& pToeprintRecord : toeprintRecords) { - auto& toeprintName = pToeprintRecord->name;; + auto& toeprintName = pToeprintRecord->name; auto pinNumber = pToeprintRecord->pinNumber; auto netNumber = pToeprintRecord->netNumber; //auto subnetNumber = pToeprintRecord->subnetNumber; - auto& pComponent = m_componentsByName[pComponentRecord->compName]; - if (pComponent == nullptr) return false; + if (netNumber < m_nets.size()) + { + auto& pComponent = m_componentsByName[pComponentRecord->compName]; + if (pComponent == nullptr) return false; - auto pPin = pComponent->GetPackage()->GetPin(pinNumber); - if (pPin == nullptr) return false; + auto pPin = pComponent->GetPackage()->GetPin(pinNumber); + if (pPin == nullptr) return false; - auto& pNet = m_nets[netNumber]; - if (pNet == nullptr) return false; + auto& pNet = m_nets[netNumber]; + if (pNet == nullptr) return false; - if (! pNet->AddPinConnection(pComponent, pPin, toeprintName)) return false; + if (!pNet->AddPinConnection(pComponent, pPin, toeprintName)) return false; + } + else + { + logerror("netNumber out of range: " + std::to_string(netNumber) + ", size = " + std::to_string(m_nets.size())); + } } } diff --git a/OdbDesignLib/ProductModel/Design.h b/OdbDesignLib/ProductModel/Design.h index 1dc6d8ea..91be6739 100644 --- a/OdbDesignLib/ProductModel/Design.h +++ b/OdbDesignLib/ProductModel/Design.h @@ -48,10 +48,10 @@ namespace Odb::Lib::ProductModel bool BuildPackages(); bool BuildParts(); bool BuildComponents(); - bool BuildLayerComponents(std::shared_ptr& pComponentsLayerDir); - bool BuildLayerParts(std::shared_ptr& pComponentsLayerDir); + bool BuildLayerComponents(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile); + bool BuildLayerParts(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile); bool BuildPlacements(); - bool BuildLayerPlacements(std::shared_ptr& pTopComponentsLayerDir); + bool BuildLayerPlacements(const Odb::Lib::FileModel::Design::ComponentsFile* pComponentsFile); }; } diff --git a/OdbDesignLib/ProtoBuf/common.pb.cc b/OdbDesignLib/ProtoBuf/common.pb.cc new file mode 100644 index 00000000..d1723770 --- /dev/null +++ b/OdbDesignLib/ProtoBuf/common.pb.cc @@ -0,0 +1,420 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: common.proto + +#include "common.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +PROTOBUF_PRAGMA_INIT_SEG + +namespace _pb = ::PROTOBUF_NAMESPACE_ID; +namespace _pbi = _pb::internal; + +namespace Odb { +namespace Lib { +namespace Protobuf { +PROTOBUF_CONSTEXPR PropertyRecord::PropertyRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_._has_bits_)*/{} + , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_.floatvalues_)*/{} + , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {} +struct PropertyRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR PropertyRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~PropertyRecordDefaultTypeInternal() {} + union { + PropertyRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PropertyRecordDefaultTypeInternal _PropertyRecord_default_instance_; +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +static ::_pb::Metadata file_level_metadata_common_2eproto[1]; +static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_common_2eproto = nullptr; +static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_common_2eproto = nullptr; + +const uint32_t TableStruct_common_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::PropertyRecord, _impl_._has_bits_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::PropertyRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::PropertyRecord, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::PropertyRecord, _impl_.value_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::PropertyRecord, _impl_.floatvalues_), + 0, + 1, + ~0u, +}; +static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, 9, -1, sizeof(::Odb::Lib::Protobuf::PropertyRecord)}, +}; + +static const ::_pb::Message* const file_default_instances[] = { + &::Odb::Lib::Protobuf::_PropertyRecord_default_instance_._instance, +}; + +const char descriptor_table_protodef_common_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = + "\n\014common.proto\022\020Odb.Lib.Protobuf\"_\n\016Prop" + "ertyRecord\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022\022\n\005value\030\002" + " \001(\tH\001\210\001\001\022\023\n\013floatValues\030\003 \003(\002B\007\n\005_nameB" + "\010\n\006_valueb\006proto3" + ; +static ::_pbi::once_flag descriptor_table_common_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_common_2eproto = { + false, false, 137, descriptor_table_protodef_common_2eproto, + "common.proto", + &descriptor_table_common_2eproto_once, nullptr, 0, 1, + schemas, file_default_instances, TableStruct_common_2eproto::offsets, + file_level_metadata_common_2eproto, file_level_enum_descriptors_common_2eproto, + file_level_service_descriptors_common_2eproto, +}; +PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_common_2eproto_getter() { + return &descriptor_table_common_2eproto; +} + +// Force running AddDescriptors() at dynamic initialization time. +PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_common_2eproto(&descriptor_table_common_2eproto); +namespace Odb { +namespace Lib { +namespace Protobuf { + +// =================================================================== + +class PropertyRecord::_Internal { + public: + using HasBits = decltype(std::declval()._impl_._has_bits_); + static void set_has_name(HasBits* has_bits) { + (*has_bits)[0] |= 1u; + } + static void set_has_value(HasBits* has_bits) { + (*has_bits)[0] |= 2u; + } +}; + +PropertyRecord::PropertyRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.PropertyRecord) +} +PropertyRecord::PropertyRecord(const PropertyRecord& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + PropertyRecord* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_._has_bits_){from._impl_._has_bits_} + , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.floatvalues_){from._impl_.floatvalues_} + , decltype(_impl_.name_){} + , decltype(_impl_.value_){}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_name()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + _impl_.value_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.value_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_value()) { + _this->_impl_.value_.Set(from._internal_value(), + _this->GetArenaForAllocation()); + } + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.PropertyRecord) +} + +inline void PropertyRecord::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_._has_bits_){} + , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.floatvalues_){arena} + , decltype(_impl_.name_){} + , decltype(_impl_.value_){} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.value_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.value_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +PropertyRecord::~PropertyRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.PropertyRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void PropertyRecord::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.floatvalues_.~RepeatedField(); + _impl_.name_.Destroy(); + _impl_.value_.Destroy(); +} + +void PropertyRecord::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void PropertyRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.PropertyRecord) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.floatvalues_.Clear(); + cached_has_bits = _impl_._has_bits_[0]; + if (cached_has_bits & 0x00000003u) { + if (cached_has_bits & 0x00000001u) { + _impl_.name_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000002u) { + _impl_.value_.ClearNonDefaultToEmpty(); + } + } + _impl_._has_bits_.Clear(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* PropertyRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + _Internal::HasBits has_bits{}; + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // optional string name = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.PropertyRecord.name")); + } else + goto handle_unusual; + continue; + // optional string value = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { + auto str = _internal_mutable_value(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.PropertyRecord.value")); + } else + goto handle_unusual; + continue; + // repeated float floatValues = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFloatParser(_internal_mutable_floatvalues(), ptr, ctx); + CHK_(ptr); + } else if (static_cast(tag) == 29) { + _internal_add_floatvalues(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr)); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + _impl_._has_bits_.Or(has_bits); + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* PropertyRecord::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.PropertyRecord) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // optional string name = 1; + if (_internal_has_name()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.PropertyRecord.name"); + target = stream->WriteStringMaybeAliased( + 1, this->_internal_name(), target); + } + + // optional string value = 2; + if (_internal_has_value()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_value().data(), static_cast(this->_internal_value().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.PropertyRecord.value"); + target = stream->WriteStringMaybeAliased( + 2, this->_internal_value(), target); + } + + // repeated float floatValues = 3; + if (this->_internal_floatvalues_size() > 0) { + target = stream->WriteFixedPacked(3, _internal_floatvalues(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.PropertyRecord) + return target; +} + +size_t PropertyRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.PropertyRecord) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated float floatValues = 3; + { + unsigned int count = static_cast(this->_internal_floatvalues_size()); + size_t data_size = 4UL * count; + if (data_size > 0) { + total_size += 1 + + ::_pbi::WireFormatLite::Int32Size(static_cast(data_size)); + } + total_size += data_size; + } + + cached_has_bits = _impl_._has_bits_[0]; + if (cached_has_bits & 0x00000003u) { + // optional string name = 1; + if (cached_has_bits & 0x00000001u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // optional string value = 2; + if (cached_has_bits & 0x00000002u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_value()); + } + + } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PropertyRecord::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + PropertyRecord::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PropertyRecord::GetClassData() const { return &_class_data_; } + + +void PropertyRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.PropertyRecord) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_impl_.floatvalues_.MergeFrom(from._impl_.floatvalues_); + cached_has_bits = from._impl_._has_bits_[0]; + if (cached_has_bits & 0x00000003u) { + if (cached_has_bits & 0x00000001u) { + _this->_internal_set_name(from._internal_name()); + } + if (cached_has_bits & 0x00000002u) { + _this->_internal_set_value(from._internal_value()); + } + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void PropertyRecord::CopyFrom(const PropertyRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.PropertyRecord) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool PropertyRecord::IsInitialized() const { + return true; +} + +void PropertyRecord::InternalSwap(PropertyRecord* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); + _impl_.floatvalues_.InternalSwap(&other->_impl_.floatvalues_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.value_, lhs_arena, + &other->_impl_.value_, rhs_arena + ); +} + +::PROTOBUF_NAMESPACE_ID::Metadata PropertyRecord::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_common_2eproto_getter, &descriptor_table_common_2eproto_once, + file_level_metadata_common_2eproto[0]); +} + +// @@protoc_insertion_point(namespace_scope) +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::PropertyRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::PropertyRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::PropertyRecord >(arena); +} +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) +#include diff --git a/OdbDesignLib/ProtoBuf/common.pb.h b/OdbDesignLib/ProtoBuf/common.pb.h new file mode 100644 index 00000000..cab5dab5 --- /dev/null +++ b/OdbDesignLib/ProtoBuf/common.pb.h @@ -0,0 +1,472 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: common.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_common_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_common_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3021000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_common_2eproto +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct TableStruct_common_2eproto { + static const uint32_t offsets[]; +}; +extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_common_2eproto; +namespace Odb { +namespace Lib { +namespace Protobuf { +class PropertyRecord; +struct PropertyRecordDefaultTypeInternal; +extern PropertyRecordDefaultTypeInternal _PropertyRecord_default_instance_; +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +PROTOBUF_NAMESPACE_OPEN +template<> ::Odb::Lib::Protobuf::PropertyRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::PropertyRecord>(Arena*); +PROTOBUF_NAMESPACE_CLOSE +namespace Odb { +namespace Lib { +namespace Protobuf { + +// =================================================================== + +class PropertyRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.PropertyRecord) */ { + public: + inline PropertyRecord() : PropertyRecord(nullptr) {} + ~PropertyRecord() override; + explicit PROTOBUF_CONSTEXPR PropertyRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + PropertyRecord(const PropertyRecord& from); + PropertyRecord(PropertyRecord&& from) noexcept + : PropertyRecord() { + *this = ::std::move(from); + } + + inline PropertyRecord& operator=(const PropertyRecord& from) { + CopyFrom(from); + return *this; + } + inline PropertyRecord& operator=(PropertyRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const PropertyRecord& default_instance() { + return *internal_default_instance(); + } + static inline const PropertyRecord* internal_default_instance() { + return reinterpret_cast( + &_PropertyRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(PropertyRecord& a, PropertyRecord& b) { + a.Swap(&b); + } + inline void Swap(PropertyRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(PropertyRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + PropertyRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const PropertyRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const PropertyRecord& from) { + PropertyRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(PropertyRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.PropertyRecord"; + } + protected: + explicit PropertyRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kFloatValuesFieldNumber = 3, + kNameFieldNumber = 1, + kValueFieldNumber = 2, + }; + // repeated float floatValues = 3; + int floatvalues_size() const; + private: + int _internal_floatvalues_size() const; + public: + void clear_floatvalues(); + private: + float _internal_floatvalues(int index) const; + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& + _internal_floatvalues() const; + void _internal_add_floatvalues(float value); + ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* + _internal_mutable_floatvalues(); + public: + float floatvalues(int index) const; + void set_floatvalues(int index, float value); + void add_floatvalues(float value); + const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& + floatvalues() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* + mutable_floatvalues(); + + // optional string name = 1; + bool has_name() const; + private: + bool _internal_has_name() const; + public: + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // optional string value = 2; + bool has_value() const; + private: + bool _internal_has_value() const; + public: + void clear_value(); + const std::string& value() const; + template + void set_value(ArgT0&& arg0, ArgT... args); + std::string* mutable_value(); + PROTOBUF_NODISCARD std::string* release_value(); + void set_allocated_value(std::string* value); + private: + const std::string& _internal_value() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_value(const std::string& value); + std::string* _internal_mutable_value(); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.PropertyRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedField< float > floatvalues_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_common_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// PropertyRecord + +// optional string name = 1; +inline bool PropertyRecord::_internal_has_name() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool PropertyRecord::has_name() const { + return _internal_has_name(); +} +inline void PropertyRecord::clear_name() { + _impl_.name_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const std::string& PropertyRecord::name() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.PropertyRecord.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void PropertyRecord::set_name(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.PropertyRecord.name) +} +inline std::string* PropertyRecord::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.PropertyRecord.name) + return _s; +} +inline const std::string& PropertyRecord::_internal_name() const { + return _impl_.name_.Get(); +} +inline void PropertyRecord::_internal_set_name(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* PropertyRecord::_internal_mutable_name() { + _impl_._has_bits_[0] |= 0x00000001u; + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* PropertyRecord::release_name() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.PropertyRecord.name) + if (!_internal_has_name()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000001u; + auto* p = _impl_.name_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void PropertyRecord::set_allocated_name(std::string* name) { + if (name != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.PropertyRecord.name) +} + +// optional string value = 2; +inline bool PropertyRecord::_internal_has_value() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool PropertyRecord::has_value() const { + return _internal_has_value(); +} +inline void PropertyRecord::clear_value() { + _impl_.value_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const std::string& PropertyRecord::value() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.PropertyRecord.value) + return _internal_value(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void PropertyRecord::set_value(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.value_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.PropertyRecord.value) +} +inline std::string* PropertyRecord::mutable_value() { + std::string* _s = _internal_mutable_value(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.PropertyRecord.value) + return _s; +} +inline const std::string& PropertyRecord::_internal_value() const { + return _impl_.value_.Get(); +} +inline void PropertyRecord::_internal_set_value(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.value_.Set(value, GetArenaForAllocation()); +} +inline std::string* PropertyRecord::_internal_mutable_value() { + _impl_._has_bits_[0] |= 0x00000002u; + return _impl_.value_.Mutable(GetArenaForAllocation()); +} +inline std::string* PropertyRecord::release_value() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.PropertyRecord.value) + if (!_internal_has_value()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000002u; + auto* p = _impl_.value_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.value_.IsDefault()) { + _impl_.value_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void PropertyRecord::set_allocated_value(std::string* value) { + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + _impl_.value_.SetAllocated(value, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.value_.IsDefault()) { + _impl_.value_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.PropertyRecord.value) +} + +// repeated float floatValues = 3; +inline int PropertyRecord::_internal_floatvalues_size() const { + return _impl_.floatvalues_.size(); +} +inline int PropertyRecord::floatvalues_size() const { + return _internal_floatvalues_size(); +} +inline void PropertyRecord::clear_floatvalues() { + _impl_.floatvalues_.Clear(); +} +inline float PropertyRecord::_internal_floatvalues(int index) const { + return _impl_.floatvalues_.Get(index); +} +inline float PropertyRecord::floatvalues(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.PropertyRecord.floatValues) + return _internal_floatvalues(index); +} +inline void PropertyRecord::set_floatvalues(int index, float value) { + _impl_.floatvalues_.Set(index, value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.PropertyRecord.floatValues) +} +inline void PropertyRecord::_internal_add_floatvalues(float value) { + _impl_.floatvalues_.Add(value); +} +inline void PropertyRecord::add_floatvalues(float value) { + _internal_add_floatvalues(value); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.PropertyRecord.floatValues) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& +PropertyRecord::_internal_floatvalues() const { + return _impl_.floatvalues_; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& +PropertyRecord::floatvalues() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.PropertyRecord.floatValues) + return _internal_floatvalues(); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* +PropertyRecord::_internal_mutable_floatvalues() { + return &_impl_.floatvalues_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* +PropertyRecord::mutable_floatvalues() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.PropertyRecord.floatValues) + return _internal_mutable_floatvalues(); +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +} // namespace Protobuf +} // namespace Lib +} // namespace Odb + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_common_2eproto diff --git a/OdbDesignLib/ProtoBuf/componentsfile.pb.cc b/OdbDesignLib/ProtoBuf/componentsfile.pb.cc new file mode 100644 index 00000000..22b5482b --- /dev/null +++ b/OdbDesignLib/ProtoBuf/componentsfile.pb.cc @@ -0,0 +1,2023 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: componentsfile.proto + +#include "componentsfile.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +PROTOBUF_PRAGMA_INIT_SEG + +namespace _pb = ::PROTOBUF_NAMESPACE_ID; +namespace _pbi = _pb::internal; + +namespace Odb { +namespace Lib { +namespace Protobuf { +PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecord_ToeprintRecord::ComponentsFile_ComponentRecord_ToeprintRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.pinnumber_)*/0u + , /*decltype(_impl_.locationx_)*/0 + , /*decltype(_impl_.locationy_)*/0 + , /*decltype(_impl_.rotation_)*/0 + , /*decltype(_impl_.mirror_)*/false + , /*decltype(_impl_.netnumber_)*/0u + , /*decltype(_impl_.subnetnumber_)*/0u + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal() {} + union { + ComponentsFile_ComponentRecord_ToeprintRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal _ComponentsFile_ComponentRecord_ToeprintRecord_default_instance_; +PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecord::ComponentsFile_ComponentRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.propertyrecords_)*/{} + , /*decltype(_impl_.toeprintrecords_)*/{} + , /*decltype(_impl_.compname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.partname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.attributes_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.pkgref_)*/0u + , /*decltype(_impl_.locationx_)*/0 + , /*decltype(_impl_.locationy_)*/0 + , /*decltype(_impl_.rotation_)*/0 + , /*decltype(_impl_.mirror_)*/false + , /*decltype(_impl_.id_)*/0u + , /*decltype(_impl_.index_)*/0u + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ComponentsFile_ComponentRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ComponentsFile_ComponentRecordDefaultTypeInternal() {} + union { + ComponentsFile_ComponentRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ComponentsFile_ComponentRecordDefaultTypeInternal _ComponentsFile_ComponentRecord_default_instance_; +PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse( + ::_pbi::ConstantInitialized) {} +struct ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal { + PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal() {} + union { + ComponentsFile_ComponentRecordsByNameEntry_DoNotUse _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal _ComponentsFile_ComponentRecordsByNameEntry_DoNotUse_default_instance_; +PROTOBUF_CONSTEXPR ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse( + ::_pbi::ConstantInitialized) {} +struct ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal { + PROTOBUF_CONSTEXPR ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal() {} + union { + ComponentsFile_PropertyRecordsByNameEntry_DoNotUse _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal _ComponentsFile_PropertyRecordsByNameEntry_DoNotUse_default_instance_; +PROTOBUF_CONSTEXPR ComponentsFile::ComponentsFile( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.attributenames_)*/{} + , /*decltype(_impl_.attributetextvalues_)*/{} + , /*decltype(_impl_.componentrecords_)*/{} + , /*decltype(_impl_.componentrecordsbyname_)*/{::_pbi::ConstantInitialized()} + , /*decltype(_impl_.propertyrecords_)*/{} + , /*decltype(_impl_.propertyrecordsbyname_)*/{::_pbi::ConstantInitialized()} + , /*decltype(_impl_.units_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.path_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.directory_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.id_)*/0u + , /*decltype(_impl_.side_)*/0 + , /*decltype(_impl_._cached_size_)*/{}} {} +struct ComponentsFileDefaultTypeInternal { + PROTOBUF_CONSTEXPR ComponentsFileDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~ComponentsFileDefaultTypeInternal() {} + union { + ComponentsFile _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ComponentsFileDefaultTypeInternal _ComponentsFile_default_instance_; +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +static ::_pb::Metadata file_level_metadata_componentsfile_2eproto[5]; +static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_componentsfile_2eproto = nullptr; +static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_componentsfile_2eproto = nullptr; + +const uint32_t TableStruct_componentsfile_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.pinnumber_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.locationx_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.locationy_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.rotation_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.mirror_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.netnumber_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.subnetnumber_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.name_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.pkgref_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.locationx_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.locationy_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.rotation_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.mirror_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.compname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.partname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.attributes_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.id_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.index_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.propertyrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, _impl_.toeprintrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse, _has_bits_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse, key_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse, value_), + 0, + 1, + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse, _has_bits_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse, key_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse, value_), + 0, + 1, + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.units_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.id_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.side_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.path_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.directory_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.attributenames_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.attributetextvalues_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.componentrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.componentrecordsbyname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.propertyrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::ComponentsFile, _impl_.propertyrecordsbyname_), +}; +static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, -1, -1, sizeof(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord)}, + { 14, -1, -1, sizeof(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord)}, + { 32, 40, -1, sizeof(::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse)}, + { 42, 50, -1, sizeof(::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse)}, + { 52, -1, -1, sizeof(::Odb::Lib::Protobuf::ComponentsFile)}, +}; + +static const ::_pb::Message* const file_default_instances[] = { + &::Odb::Lib::Protobuf::_ComponentsFile_ComponentRecord_ToeprintRecord_default_instance_._instance, + &::Odb::Lib::Protobuf::_ComponentsFile_ComponentRecord_default_instance_._instance, + &::Odb::Lib::Protobuf::_ComponentsFile_ComponentRecordsByNameEntry_DoNotUse_default_instance_._instance, + &::Odb::Lib::Protobuf::_ComponentsFile_PropertyRecordsByNameEntry_DoNotUse_default_instance_._instance, + &::Odb::Lib::Protobuf::_ComponentsFile_default_instance_._instance, +}; + +const char descriptor_table_protodef_componentsfile_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = + "\n\024componentsfile.proto\022\020Odb.Lib.Protobuf" + "\032\014common.proto\032\013enums.proto\"\305\t\n\016Componen" + "tsFile\022\r\n\005units\030\001 \001(\t\022\n\n\002id\030\002 \001(\r\022)\n\004sid" + "e\030\003 \001(\0162\033.Odb.Lib.Protobuf.BoardSide\022\014\n\004" + "name\030\004 \001(\t\022\014\n\004path\030\005 \001(\t\022\021\n\tdirectory\030\006 " + "\001(\t\022\026\n\016attributeNames\030\007 \003(\t\022\033\n\023attribute" + "TextValues\030\010 \003(\t\022J\n\020componentRecords\030\t \003" + "(\01320.Odb.Lib.Protobuf.ComponentsFile.Com" + "ponentRecord\022\\\n\026componentRecordsByName\030\n" + " \003(\0132<.Odb.Lib.Protobuf.ComponentsFile.C" + "omponentRecordsByNameEntry\0229\n\017propertyRe" + "cords\030\013 \003(\0132 .Odb.Lib.Protobuf.PropertyR" + "ecord\022Z\n\025propertyRecordsByName\030\014 \003(\0132;.O" + "db.Lib.Protobuf.ComponentsFile.PropertyR" + "ecordsByNameEntry\032\366\003\n\017ComponentRecord\022\016\n" + "\006pkgRef\030\001 \001(\r\022\021\n\tlocationX\030\002 \001(\002\022\021\n\tloca" + "tionY\030\003 \001(\002\022\020\n\010rotation\030\004 \001(\002\022\016\n\006mirror\030" + "\005 \001(\010\022\020\n\010compName\030\006 \001(\t\022\020\n\010partName\030\007 \001(" + "\t\022\022\n\nattributes\030\010 \001(\t\022\n\n\002id\030\t \001(\r\022\r\n\005ind" + "ex\030\n \001(\r\0229\n\017propertyRecords\030\013 \003(\0132 .Odb." + "Lib.Protobuf.PropertyRecord\022X\n\017toeprintR" + "ecords\030\014 \003(\0132\?.Odb.Lib.Protobuf.Componen" + "tsFile.ComponentRecord.ToeprintRecord\032\242\001" + "\n\016ToeprintRecord\022\021\n\tpinNumber\030\001 \001(\r\022\021\n\tl" + "ocationX\030\002 \001(\002\022\021\n\tlocationY\030\003 \001(\002\022\020\n\010rot" + "ation\030\004 \001(\002\022\016\n\006mirror\030\005 \001(\010\022\021\n\tnetNumber" + "\030\006 \001(\r\022\024\n\014subnetNumber\030\007 \001(\r\022\014\n\004name\030\010 \001" + "(\t\032o\n\033ComponentRecordsByNameEntry\022\013\n\003key" + "\030\001 \001(\t\022\?\n\005value\030\002 \001(\01320.Odb.Lib.Protobuf" + ".ComponentsFile.ComponentRecord:\0028\001\032^\n\032P" + "ropertyRecordsByNameEntry\022\013\n\003key\030\001 \001(\t\022/" + "\n\005value\030\002 \001(\0132 .Odb.Lib.Protobuf.Propert" + "yRecord:\0028\001b\006proto3" + ; +static const ::_pbi::DescriptorTable* const descriptor_table_componentsfile_2eproto_deps[2] = { + &::descriptor_table_common_2eproto, + &::descriptor_table_enums_2eproto, +}; +static ::_pbi::once_flag descriptor_table_componentsfile_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_componentsfile_2eproto = { + false, false, 1299, descriptor_table_protodef_componentsfile_2eproto, + "componentsfile.proto", + &descriptor_table_componentsfile_2eproto_once, descriptor_table_componentsfile_2eproto_deps, 2, 5, + schemas, file_default_instances, TableStruct_componentsfile_2eproto::offsets, + file_level_metadata_componentsfile_2eproto, file_level_enum_descriptors_componentsfile_2eproto, + file_level_service_descriptors_componentsfile_2eproto, +}; +PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_componentsfile_2eproto_getter() { + return &descriptor_table_componentsfile_2eproto; +} + +// Force running AddDescriptors() at dynamic initialization time. +PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_componentsfile_2eproto(&descriptor_table_componentsfile_2eproto); +namespace Odb { +namespace Lib { +namespace Protobuf { + +// =================================================================== + +class ComponentsFile_ComponentRecord_ToeprintRecord::_Internal { + public: +}; + +ComponentsFile_ComponentRecord_ToeprintRecord::ComponentsFile_ComponentRecord_ToeprintRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) +} +ComponentsFile_ComponentRecord_ToeprintRecord::ComponentsFile_ComponentRecord_ToeprintRecord(const ComponentsFile_ComponentRecord_ToeprintRecord& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + ComponentsFile_ComponentRecord_ToeprintRecord* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.pinnumber_){} + , decltype(_impl_.locationx_){} + , decltype(_impl_.locationy_){} + , decltype(_impl_.rotation_){} + , decltype(_impl_.mirror_){} + , decltype(_impl_.netnumber_){} + , decltype(_impl_.subnetnumber_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.pinnumber_, &from._impl_.pinnumber_, + static_cast(reinterpret_cast(&_impl_.subnetnumber_) - + reinterpret_cast(&_impl_.pinnumber_)) + sizeof(_impl_.subnetnumber_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) +} + +inline void ComponentsFile_ComponentRecord_ToeprintRecord::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.pinnumber_){0u} + , decltype(_impl_.locationx_){0} + , decltype(_impl_.locationy_){0} + , decltype(_impl_.rotation_){0} + , decltype(_impl_.mirror_){false} + , decltype(_impl_.netnumber_){0u} + , decltype(_impl_.subnetnumber_){0u} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +ComponentsFile_ComponentRecord_ToeprintRecord::~ComponentsFile_ComponentRecord_ToeprintRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void ComponentsFile_ComponentRecord_ToeprintRecord::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.name_.Destroy(); +} + +void ComponentsFile_ComponentRecord_ToeprintRecord::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void ComponentsFile_ComponentRecord_ToeprintRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + ::memset(&_impl_.pinnumber_, 0, static_cast( + reinterpret_cast(&_impl_.subnetnumber_) - + reinterpret_cast(&_impl_.pinnumber_)) + sizeof(_impl_.subnetnumber_)); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ComponentsFile_ComponentRecord_ToeprintRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // uint32 pinNumber = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + _impl_.pinnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // float locationX = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 21)) { + _impl_.locationx_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // float locationY = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 29)) { + _impl_.locationy_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // float rotation = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 37)) { + _impl_.rotation_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // bool mirror = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { + _impl_.mirror_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 netNumber = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { + _impl_.netnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 subnetNumber = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { + _impl_.subnetnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string name = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ComponentsFile_ComponentRecord_ToeprintRecord::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // uint32 pinNumber = 1; + if (this->_internal_pinnumber() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_pinnumber(), target); + } + + // float locationX = 2; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = this->_internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_locationx(), target); + } + + // float locationY = 3; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = this->_internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_locationy(), target); + } + + // float rotation = 4; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = this->_internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_rotation(), target); + } + + // bool mirror = 5; + if (this->_internal_mirror() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_mirror(), target); + } + + // uint32 netNumber = 6; + if (this->_internal_netnumber() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(6, this->_internal_netnumber(), target); + } + + // uint32 subnetNumber = 7; + if (this->_internal_subnetnumber() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_subnetnumber(), target); + } + + // string name = 8; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name"); + target = stream->WriteStringMaybeAliased( + 8, this->_internal_name(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + return target; +} + +size_t ComponentsFile_ComponentRecord_ToeprintRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 8; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // uint32 pinNumber = 1; + if (this->_internal_pinnumber() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_pinnumber()); + } + + // float locationX = 2; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = this->_internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + total_size += 1 + 4; + } + + // float locationY = 3; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = this->_internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + total_size += 1 + 4; + } + + // float rotation = 4; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = this->_internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + total_size += 1 + 4; + } + + // bool mirror = 5; + if (this->_internal_mirror() != 0) { + total_size += 1 + 1; + } + + // uint32 netNumber = 6; + if (this->_internal_netnumber() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_netnumber()); + } + + // uint32 subnetNumber = 7; + if (this->_internal_subnetnumber() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_subnetnumber()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ComponentsFile_ComponentRecord_ToeprintRecord::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + ComponentsFile_ComponentRecord_ToeprintRecord::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ComponentsFile_ComponentRecord_ToeprintRecord::GetClassData() const { return &_class_data_; } + + +void ComponentsFile_ComponentRecord_ToeprintRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_pinnumber() != 0) { + _this->_internal_set_pinnumber(from._internal_pinnumber()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = from._internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + _this->_internal_set_locationx(from._internal_locationx()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = from._internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + _this->_internal_set_locationy(from._internal_locationy()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = from._internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + _this->_internal_set_rotation(from._internal_rotation()); + } + if (from._internal_mirror() != 0) { + _this->_internal_set_mirror(from._internal_mirror()); + } + if (from._internal_netnumber() != 0) { + _this->_internal_set_netnumber(from._internal_netnumber()); + } + if (from._internal_subnetnumber() != 0) { + _this->_internal_set_subnetnumber(from._internal_subnetnumber()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ComponentsFile_ComponentRecord_ToeprintRecord::CopyFrom(const ComponentsFile_ComponentRecord_ToeprintRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ComponentsFile_ComponentRecord_ToeprintRecord::IsInitialized() const { + return true; +} + +void ComponentsFile_ComponentRecord_ToeprintRecord::InternalSwap(ComponentsFile_ComponentRecord_ToeprintRecord* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.subnetnumber_) + + sizeof(ComponentsFile_ComponentRecord_ToeprintRecord::_impl_.subnetnumber_) + - PROTOBUF_FIELD_OFFSET(ComponentsFile_ComponentRecord_ToeprintRecord, _impl_.pinnumber_)>( + reinterpret_cast(&_impl_.pinnumber_), + reinterpret_cast(&other->_impl_.pinnumber_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ComponentsFile_ComponentRecord_ToeprintRecord::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_componentsfile_2eproto_getter, &descriptor_table_componentsfile_2eproto_once, + file_level_metadata_componentsfile_2eproto[0]); +} + +// =================================================================== + +class ComponentsFile_ComponentRecord::_Internal { + public: +}; + +void ComponentsFile_ComponentRecord::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} +ComponentsFile_ComponentRecord::ComponentsFile_ComponentRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) +} +ComponentsFile_ComponentRecord::ComponentsFile_ComponentRecord(const ComponentsFile_ComponentRecord& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + ComponentsFile_ComponentRecord* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} + , decltype(_impl_.toeprintrecords_){from._impl_.toeprintrecords_} + , decltype(_impl_.compname_){} + , decltype(_impl_.partname_){} + , decltype(_impl_.attributes_){} + , decltype(_impl_.pkgref_){} + , decltype(_impl_.locationx_){} + , decltype(_impl_.locationy_){} + , decltype(_impl_.rotation_){} + , decltype(_impl_.mirror_){} + , decltype(_impl_.id_){} + , decltype(_impl_.index_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.compname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.compname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_compname().empty()) { + _this->_impl_.compname_.Set(from._internal_compname(), + _this->GetArenaForAllocation()); + } + _impl_.partname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.partname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_partname().empty()) { + _this->_impl_.partname_.Set(from._internal_partname(), + _this->GetArenaForAllocation()); + } + _impl_.attributes_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributes_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_attributes().empty()) { + _this->_impl_.attributes_.Set(from._internal_attributes(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.pkgref_, &from._impl_.pkgref_, + static_cast(reinterpret_cast(&_impl_.index_) - + reinterpret_cast(&_impl_.pkgref_)) + sizeof(_impl_.index_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) +} + +inline void ComponentsFile_ComponentRecord::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.propertyrecords_){arena} + , decltype(_impl_.toeprintrecords_){arena} + , decltype(_impl_.compname_){} + , decltype(_impl_.partname_){} + , decltype(_impl_.attributes_){} + , decltype(_impl_.pkgref_){0u} + , decltype(_impl_.locationx_){0} + , decltype(_impl_.locationy_){0} + , decltype(_impl_.rotation_){0} + , decltype(_impl_.mirror_){false} + , decltype(_impl_.id_){0u} + , decltype(_impl_.index_){0u} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.compname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.compname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.partname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.partname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributes_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributes_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +ComponentsFile_ComponentRecord::~ComponentsFile_ComponentRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void ComponentsFile_ComponentRecord::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.propertyrecords_.~RepeatedPtrField(); + _impl_.toeprintrecords_.~RepeatedPtrField(); + _impl_.compname_.Destroy(); + _impl_.partname_.Destroy(); + _impl_.attributes_.Destroy(); +} + +void ComponentsFile_ComponentRecord::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void ComponentsFile_ComponentRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.propertyrecords_.Clear(); + _impl_.toeprintrecords_.Clear(); + _impl_.compname_.ClearToEmpty(); + _impl_.partname_.ClearToEmpty(); + _impl_.attributes_.ClearToEmpty(); + ::memset(&_impl_.pkgref_, 0, static_cast( + reinterpret_cast(&_impl_.index_) - + reinterpret_cast(&_impl_.pkgref_)) + sizeof(_impl_.index_)); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ComponentsFile_ComponentRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // uint32 pkgRef = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + _impl_.pkgref_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // float locationX = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 21)) { + _impl_.locationx_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // float locationY = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 29)) { + _impl_.locationy_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // float rotation = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 37)) { + _impl_.rotation_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // bool mirror = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { + _impl_.mirror_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string compName = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { + auto str = _internal_mutable_compname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName")); + } else + goto handle_unusual; + continue; + // string partName = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { + auto str = _internal_mutable_partname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName")); + } else + goto handle_unusual; + continue; + // string attributes = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { + auto str = _internal_mutable_attributes(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes")); + } else + goto handle_unusual; + continue; + // uint32 id = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 72)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 index = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 80)) { + _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 90)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord toeprintRecords = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 98)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_toeprintrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<98>(ptr)); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ComponentsFile_ComponentRecord::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // uint32 pkgRef = 1; + if (this->_internal_pkgref() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_pkgref(), target); + } + + // float locationX = 2; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = this->_internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_locationx(), target); + } + + // float locationY = 3; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = this->_internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_locationy(), target); + } + + // float rotation = 4; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = this->_internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_rotation(), target); + } + + // bool mirror = 5; + if (this->_internal_mirror() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_mirror(), target); + } + + // string compName = 6; + if (!this->_internal_compname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_compname().data(), static_cast(this->_internal_compname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName"); + target = stream->WriteStringMaybeAliased( + 6, this->_internal_compname(), target); + } + + // string partName = 7; + if (!this->_internal_partname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_partname().data(), static_cast(this->_internal_partname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName"); + target = stream->WriteStringMaybeAliased( + 7, this->_internal_partname(), target); + } + + // string attributes = 8; + if (!this->_internal_attributes().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_attributes().data(), static_cast(this->_internal_attributes().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes"); + target = stream->WriteStringMaybeAliased( + 8, this->_internal_attributes(), target); + } + + // uint32 id = 9; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(9, this->_internal_id(), target); + } + + // uint32 index = 10; + if (this->_internal_index() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(10, this->_internal_index(), target); + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + for (unsigned i = 0, + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(11, repfield, repfield.GetCachedSize(), target, stream); + } + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord toeprintRecords = 12; + for (unsigned i = 0, + n = static_cast(this->_internal_toeprintrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_toeprintrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(12, repfield, repfield.GetCachedSize(), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + return target; +} + +size_t ComponentsFile_ComponentRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord toeprintRecords = 12; + total_size += 1UL * this->_internal_toeprintrecords_size(); + for (const auto& msg : this->_impl_.toeprintrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // string compName = 6; + if (!this->_internal_compname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_compname()); + } + + // string partName = 7; + if (!this->_internal_partname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_partname()); + } + + // string attributes = 8; + if (!this->_internal_attributes().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_attributes()); + } + + // uint32 pkgRef = 1; + if (this->_internal_pkgref() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_pkgref()); + } + + // float locationX = 2; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = this->_internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + total_size += 1 + 4; + } + + // float locationY = 3; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = this->_internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + total_size += 1 + 4; + } + + // float rotation = 4; + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = this->_internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + total_size += 1 + 4; + } + + // bool mirror = 5; + if (this->_internal_mirror() != 0) { + total_size += 1 + 1; + } + + // uint32 id = 9; + if (this->_internal_id() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); + } + + // uint32 index = 10; + if (this->_internal_index() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ComponentsFile_ComponentRecord::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + ComponentsFile_ComponentRecord::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ComponentsFile_ComponentRecord::GetClassData() const { return &_class_data_; } + + +void ComponentsFile_ComponentRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); + _this->_impl_.toeprintrecords_.MergeFrom(from._impl_.toeprintrecords_); + if (!from._internal_compname().empty()) { + _this->_internal_set_compname(from._internal_compname()); + } + if (!from._internal_partname().empty()) { + _this->_internal_set_partname(from._internal_partname()); + } + if (!from._internal_attributes().empty()) { + _this->_internal_set_attributes(from._internal_attributes()); + } + if (from._internal_pkgref() != 0) { + _this->_internal_set_pkgref(from._internal_pkgref()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationx = from._internal_locationx(); + uint32_t raw_locationx; + memcpy(&raw_locationx, &tmp_locationx, sizeof(tmp_locationx)); + if (raw_locationx != 0) { + _this->_internal_set_locationx(from._internal_locationx()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_locationy = from._internal_locationy(); + uint32_t raw_locationy; + memcpy(&raw_locationy, &tmp_locationy, sizeof(tmp_locationy)); + if (raw_locationy != 0) { + _this->_internal_set_locationy(from._internal_locationy()); + } + static_assert(sizeof(uint32_t) == sizeof(float), "Code assumes uint32_t and float are the same size."); + float tmp_rotation = from._internal_rotation(); + uint32_t raw_rotation; + memcpy(&raw_rotation, &tmp_rotation, sizeof(tmp_rotation)); + if (raw_rotation != 0) { + _this->_internal_set_rotation(from._internal_rotation()); + } + if (from._internal_mirror() != 0) { + _this->_internal_set_mirror(from._internal_mirror()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + if (from._internal_index() != 0) { + _this->_internal_set_index(from._internal_index()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ComponentsFile_ComponentRecord::CopyFrom(const ComponentsFile_ComponentRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ComponentsFile_ComponentRecord::IsInitialized() const { + return true; +} + +void ComponentsFile_ComponentRecord::InternalSwap(ComponentsFile_ComponentRecord* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); + _impl_.toeprintrecords_.InternalSwap(&other->_impl_.toeprintrecords_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.compname_, lhs_arena, + &other->_impl_.compname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.partname_, lhs_arena, + &other->_impl_.partname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.attributes_, lhs_arena, + &other->_impl_.attributes_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ComponentsFile_ComponentRecord, _impl_.index_) + + sizeof(ComponentsFile_ComponentRecord::_impl_.index_) + - PROTOBUF_FIELD_OFFSET(ComponentsFile_ComponentRecord, _impl_.pkgref_)>( + reinterpret_cast(&_impl_.pkgref_), + reinterpret_cast(&other->_impl_.pkgref_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ComponentsFile_ComponentRecord::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_componentsfile_2eproto_getter, &descriptor_table_componentsfile_2eproto_once, + file_level_metadata_componentsfile_2eproto[1]); +} + +// =================================================================== + +ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse() {} +ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena) + : SuperType(arena) {} +void ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::MergeFrom(const ComponentsFile_ComponentRecordsByNameEntry_DoNotUse& other) { + MergeFromInternal(other); +} +::PROTOBUF_NAMESPACE_ID::Metadata ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_componentsfile_2eproto_getter, &descriptor_table_componentsfile_2eproto_once, + file_level_metadata_componentsfile_2eproto[2]); +} + +// =================================================================== + +ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse() {} +ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena) + : SuperType(arena) {} +void ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::MergeFrom(const ComponentsFile_PropertyRecordsByNameEntry_DoNotUse& other) { + MergeFromInternal(other); +} +::PROTOBUF_NAMESPACE_ID::Metadata ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_componentsfile_2eproto_getter, &descriptor_table_componentsfile_2eproto_once, + file_level_metadata_componentsfile_2eproto[3]); +} + +// =================================================================== + +class ComponentsFile::_Internal { + public: +}; + +void ComponentsFile::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} +void ComponentsFile::clear_propertyrecordsbyname() { + _impl_.propertyrecordsbyname_.Clear(); +} +ComponentsFile::ComponentsFile(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + if (arena != nullptr && !is_message_owned) { + arena->OwnCustomDestructor(this, &ComponentsFile::ArenaDtor); + } + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.ComponentsFile) +} +ComponentsFile::ComponentsFile(const ComponentsFile& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + ComponentsFile* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.attributenames_){from._impl_.attributenames_} + , decltype(_impl_.attributetextvalues_){from._impl_.attributetextvalues_} + , decltype(_impl_.componentrecords_){from._impl_.componentrecords_} + , /*decltype(_impl_.componentrecordsbyname_)*/{} + , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} + , /*decltype(_impl_.propertyrecordsbyname_)*/{} + , decltype(_impl_.units_){} + , decltype(_impl_.name_){} + , decltype(_impl_.path_){} + , decltype(_impl_.directory_){} + , decltype(_impl_.id_){} + , decltype(_impl_.side_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _this->_impl_.componentrecordsbyname_.MergeFrom(from._impl_.componentrecordsbyname_); + _this->_impl_.propertyrecordsbyname_.MergeFrom(from._impl_.propertyrecordsbyname_); + _impl_.units_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.units_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_units().empty()) { + _this->_impl_.units_.Set(from._internal_units(), + _this->GetArenaForAllocation()); + } + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + _impl_.path_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.path_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_path().empty()) { + _this->_impl_.path_.Set(from._internal_path(), + _this->GetArenaForAllocation()); + } + _impl_.directory_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.directory_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_directory().empty()) { + _this->_impl_.directory_.Set(from._internal_directory(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.id_, &from._impl_.id_, + static_cast(reinterpret_cast(&_impl_.side_) - + reinterpret_cast(&_impl_.id_)) + sizeof(_impl_.side_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.ComponentsFile) +} + +inline void ComponentsFile::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.attributenames_){arena} + , decltype(_impl_.attributetextvalues_){arena} + , decltype(_impl_.componentrecords_){arena} + , /*decltype(_impl_.componentrecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} + , decltype(_impl_.propertyrecords_){arena} + , /*decltype(_impl_.propertyrecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} + , decltype(_impl_.units_){} + , decltype(_impl_.name_){} + , decltype(_impl_.path_){} + , decltype(_impl_.directory_){} + , decltype(_impl_.id_){0u} + , decltype(_impl_.side_){0} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.units_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.units_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.path_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.path_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.directory_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.directory_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +ComponentsFile::~ComponentsFile() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.ComponentsFile) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + ArenaDtor(this); + return; + } + SharedDtor(); +} + +inline void ComponentsFile::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.attributenames_.~RepeatedPtrField(); + _impl_.attributetextvalues_.~RepeatedPtrField(); + _impl_.componentrecords_.~RepeatedPtrField(); + _impl_.componentrecordsbyname_.Destruct(); + _impl_.componentrecordsbyname_.~MapField(); + _impl_.propertyrecords_.~RepeatedPtrField(); + _impl_.propertyrecordsbyname_.Destruct(); + _impl_.propertyrecordsbyname_.~MapField(); + _impl_.units_.Destroy(); + _impl_.name_.Destroy(); + _impl_.path_.Destroy(); + _impl_.directory_.Destroy(); +} + +void ComponentsFile::ArenaDtor(void* object) { + ComponentsFile* _this = reinterpret_cast< ComponentsFile* >(object); + _this->_impl_.componentrecordsbyname_.Destruct(); + _this->_impl_.propertyrecordsbyname_.Destruct(); +} +void ComponentsFile::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void ComponentsFile::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.ComponentsFile) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.attributenames_.Clear(); + _impl_.attributetextvalues_.Clear(); + _impl_.componentrecords_.Clear(); + _impl_.componentrecordsbyname_.Clear(); + _impl_.propertyrecords_.Clear(); + _impl_.propertyrecordsbyname_.Clear(); + _impl_.units_.ClearToEmpty(); + _impl_.name_.ClearToEmpty(); + _impl_.path_.ClearToEmpty(); + _impl_.directory_.ClearToEmpty(); + ::memset(&_impl_.id_, 0, static_cast( + reinterpret_cast(&_impl_.side_) - + reinterpret_cast(&_impl_.id_)) + sizeof(_impl_.side_)); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ComponentsFile::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // string units = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + auto str = _internal_mutable_units(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.units")); + } else + goto handle_unusual; + continue; + // uint32 id = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.BoardSide side = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_side(static_cast<::Odb::Lib::Protobuf::BoardSide>(val)); + } else + goto handle_unusual; + continue; + // string name = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.name")); + } else + goto handle_unusual; + continue; + // string path = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { + auto str = _internal_mutable_path(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.path")); + } else + goto handle_unusual; + continue; + // string directory = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { + auto str = _internal_mutable_directory(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.directory")); + } else + goto handle_unusual; + continue; + // repeated string attributeNames = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { + ptr -= 1; + do { + ptr += 1; + auto str = _internal_add_attributenames(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.attributeNames")); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr)); + } else + goto handle_unusual; + continue; + // repeated string attributeTextValues = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { + ptr -= 1; + do { + ptr += 1; + auto str = _internal_add_attributetextvalues(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.ComponentsFile.attributeTextValues")); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord componentRecords = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_componentrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr)); + } else + goto handle_unusual; + continue; + // map componentRecordsByName = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 82)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(&_impl_.componentrecordsbyname_, ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 90)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr)); + } else + goto handle_unusual; + continue; + // map propertyRecordsByName = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 98)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(&_impl_.propertyrecordsbyname_, ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<98>(ptr)); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ComponentsFile::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.ComponentsFile) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // string units = 1; + if (!this->_internal_units().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_units().data(), static_cast(this->_internal_units().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.units"); + target = stream->WriteStringMaybeAliased( + 1, this->_internal_units(), target); + } + + // uint32 id = 2; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_id(), target); + } + + // .Odb.Lib.Protobuf.BoardSide side = 3; + if (this->_internal_side() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 3, this->_internal_side(), target); + } + + // string name = 4; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.name"); + target = stream->WriteStringMaybeAliased( + 4, this->_internal_name(), target); + } + + // string path = 5; + if (!this->_internal_path().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_path().data(), static_cast(this->_internal_path().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.path"); + target = stream->WriteStringMaybeAliased( + 5, this->_internal_path(), target); + } + + // string directory = 6; + if (!this->_internal_directory().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_directory().data(), static_cast(this->_internal_directory().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.directory"); + target = stream->WriteStringMaybeAliased( + 6, this->_internal_directory(), target); + } + + // repeated string attributeNames = 7; + for (int i = 0, n = this->_internal_attributenames_size(); i < n; i++) { + const auto& s = this->_internal_attributenames(i); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + s.data(), static_cast(s.length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.attributeNames"); + target = stream->WriteString(7, s, target); + } + + // repeated string attributeTextValues = 8; + for (int i = 0, n = this->_internal_attributetextvalues_size(); i < n; i++) { + const auto& s = this->_internal_attributetextvalues(i); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + s.data(), static_cast(s.length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.attributeTextValues"); + target = stream->WriteString(8, s, target); + } + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord componentRecords = 9; + for (unsigned i = 0, + n = static_cast(this->_internal_componentrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_componentrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(9, repfield, repfield.GetCachedSize(), target, stream); + } + + // map componentRecordsByName = 10; + if (!this->_internal_componentrecordsbyname().empty()) { + using MapType = ::_pb::Map; + using WireHelper = ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::Funcs; + const auto& map_field = this->_internal_componentrecordsbyname(); + auto check_utf8 = [](const MapType::value_type& entry) { + (void)entry; + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + entry.first.data(), static_cast(entry.first.length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.ComponentRecordsByNameEntry.key"); + }; + + if (stream->IsSerializationDeterministic() && map_field.size() > 1) { + for (const auto& entry : ::_pbi::MapSorterPtr(map_field)) { + target = WireHelper::InternalSerialize(10, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } else { + for (const auto& entry : map_field) { + target = WireHelper::InternalSerialize(10, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + for (unsigned i = 0, + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(11, repfield, repfield.GetCachedSize(), target, stream); + } + + // map propertyRecordsByName = 12; + if (!this->_internal_propertyrecordsbyname().empty()) { + using MapType = ::_pb::Map; + using WireHelper = ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::Funcs; + const auto& map_field = this->_internal_propertyrecordsbyname(); + auto check_utf8 = [](const MapType::value_type& entry) { + (void)entry; + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + entry.first.data(), static_cast(entry.first.length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.ComponentsFile.PropertyRecordsByNameEntry.key"); + }; + + if (stream->IsSerializationDeterministic() && map_field.size() > 1) { + for (const auto& entry : ::_pbi::MapSorterPtr(map_field)) { + target = WireHelper::InternalSerialize(12, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } else { + for (const auto& entry : map_field) { + target = WireHelper::InternalSerialize(12, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.ComponentsFile) + return target; +} + +size_t ComponentsFile::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.ComponentsFile) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated string attributeNames = 7; + total_size += 1 * + ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.attributenames_.size()); + for (int i = 0, n = _impl_.attributenames_.size(); i < n; i++) { + total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + _impl_.attributenames_.Get(i)); + } + + // repeated string attributeTextValues = 8; + total_size += 1 * + ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.attributetextvalues_.size()); + for (int i = 0, n = _impl_.attributetextvalues_.size(); i < n; i++) { + total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + _impl_.attributetextvalues_.Get(i)); + } + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord componentRecords = 9; + total_size += 1UL * this->_internal_componentrecords_size(); + for (const auto& msg : this->_impl_.componentrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // map componentRecordsByName = 10; + total_size += 1 * + ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_componentrecordsbyname_size()); + for (::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >::const_iterator + it = this->_internal_componentrecordsbyname().begin(); + it != this->_internal_componentrecordsbyname().end(); ++it) { + total_size += ComponentsFile_ComponentRecordsByNameEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second); + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // map propertyRecordsByName = 12; + total_size += 1 * + ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_propertyrecordsbyname_size()); + for (::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >::const_iterator + it = this->_internal_propertyrecordsbyname().begin(); + it != this->_internal_propertyrecordsbyname().end(); ++it) { + total_size += ComponentsFile_PropertyRecordsByNameEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second); + } + + // string units = 1; + if (!this->_internal_units().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_units()); + } + + // string name = 4; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // string path = 5; + if (!this->_internal_path().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_path()); + } + + // string directory = 6; + if (!this->_internal_directory().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_directory()); + } + + // uint32 id = 2; + if (this->_internal_id() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); + } + + // .Odb.Lib.Protobuf.BoardSide side = 3; + if (this->_internal_side() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_side()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ComponentsFile::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + ComponentsFile::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ComponentsFile::GetClassData() const { return &_class_data_; } + + +void ComponentsFile::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.ComponentsFile) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_impl_.attributenames_.MergeFrom(from._impl_.attributenames_); + _this->_impl_.attributetextvalues_.MergeFrom(from._impl_.attributetextvalues_); + _this->_impl_.componentrecords_.MergeFrom(from._impl_.componentrecords_); + _this->_impl_.componentrecordsbyname_.MergeFrom(from._impl_.componentrecordsbyname_); + _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); + _this->_impl_.propertyrecordsbyname_.MergeFrom(from._impl_.propertyrecordsbyname_); + if (!from._internal_units().empty()) { + _this->_internal_set_units(from._internal_units()); + } + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (!from._internal_path().empty()) { + _this->_internal_set_path(from._internal_path()); + } + if (!from._internal_directory().empty()) { + _this->_internal_set_directory(from._internal_directory()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + if (from._internal_side() != 0) { + _this->_internal_set_side(from._internal_side()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ComponentsFile::CopyFrom(const ComponentsFile& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.ComponentsFile) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ComponentsFile::IsInitialized() const { + return true; +} + +void ComponentsFile::InternalSwap(ComponentsFile* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.attributenames_.InternalSwap(&other->_impl_.attributenames_); + _impl_.attributetextvalues_.InternalSwap(&other->_impl_.attributetextvalues_); + _impl_.componentrecords_.InternalSwap(&other->_impl_.componentrecords_); + _impl_.componentrecordsbyname_.InternalSwap(&other->_impl_.componentrecordsbyname_); + _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); + _impl_.propertyrecordsbyname_.InternalSwap(&other->_impl_.propertyrecordsbyname_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.units_, lhs_arena, + &other->_impl_.units_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.path_, lhs_arena, + &other->_impl_.path_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.directory_, lhs_arena, + &other->_impl_.directory_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ComponentsFile, _impl_.side_) + + sizeof(ComponentsFile::_impl_.side_) + - PROTOBUF_FIELD_OFFSET(ComponentsFile, _impl_.id_)>( + reinterpret_cast(&_impl_.id_), + reinterpret_cast(&other->_impl_.id_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ComponentsFile::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_componentsfile_2eproto_getter, &descriptor_table_componentsfile_2eproto_once, + file_level_metadata_componentsfile_2eproto[4]); +} + +// @@protoc_insertion_point(namespace_scope) +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >(arena); +} +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >(arena); +} +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse >(arena); +} +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse >(arena); +} +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::ComponentsFile* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::ComponentsFile >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::ComponentsFile >(arena); +} +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) +#include diff --git a/OdbDesignLib/ProtoBuf/componentsfile.pb.h b/OdbDesignLib/ProtoBuf/componentsfile.pb.h new file mode 100644 index 00000000..9f20903b --- /dev/null +++ b/OdbDesignLib/ProtoBuf/componentsfile.pb.h @@ -0,0 +1,2158 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: componentsfile.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_componentsfile_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_componentsfile_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3021000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +#include "common.pb.h" +#include "enums.pb.h" +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_componentsfile_2eproto +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct TableStruct_componentsfile_2eproto { + static const uint32_t offsets[]; +}; +extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_componentsfile_2eproto; +namespace Odb { +namespace Lib { +namespace Protobuf { +class ComponentsFile; +struct ComponentsFileDefaultTypeInternal; +extern ComponentsFileDefaultTypeInternal _ComponentsFile_default_instance_; +class ComponentsFile_ComponentRecord; +struct ComponentsFile_ComponentRecordDefaultTypeInternal; +extern ComponentsFile_ComponentRecordDefaultTypeInternal _ComponentsFile_ComponentRecord_default_instance_; +class ComponentsFile_ComponentRecord_ToeprintRecord; +struct ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal; +extern ComponentsFile_ComponentRecord_ToeprintRecordDefaultTypeInternal _ComponentsFile_ComponentRecord_ToeprintRecord_default_instance_; +class ComponentsFile_ComponentRecordsByNameEntry_DoNotUse; +struct ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal; +extern ComponentsFile_ComponentRecordsByNameEntry_DoNotUseDefaultTypeInternal _ComponentsFile_ComponentRecordsByNameEntry_DoNotUse_default_instance_; +class ComponentsFile_PropertyRecordsByNameEntry_DoNotUse; +struct ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal; +extern ComponentsFile_PropertyRecordsByNameEntry_DoNotUseDefaultTypeInternal _ComponentsFile_PropertyRecordsByNameEntry_DoNotUse_default_instance_; +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +PROTOBUF_NAMESPACE_OPEN +template<> ::Odb::Lib::Protobuf::ComponentsFile* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::ComponentsFile>(Arena*); +template<> ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord>(Arena*); +template<> ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord>(Arena*); +template<> ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::ComponentsFile_ComponentRecordsByNameEntry_DoNotUse>(Arena*); +template<> ::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::ComponentsFile_PropertyRecordsByNameEntry_DoNotUse>(Arena*); +PROTOBUF_NAMESPACE_CLOSE +namespace Odb { +namespace Lib { +namespace Protobuf { + +// =================================================================== + +class ComponentsFile_ComponentRecord_ToeprintRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) */ { + public: + inline ComponentsFile_ComponentRecord_ToeprintRecord() : ComponentsFile_ComponentRecord_ToeprintRecord(nullptr) {} + ~ComponentsFile_ComponentRecord_ToeprintRecord() override; + explicit PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecord_ToeprintRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ComponentsFile_ComponentRecord_ToeprintRecord(const ComponentsFile_ComponentRecord_ToeprintRecord& from); + ComponentsFile_ComponentRecord_ToeprintRecord(ComponentsFile_ComponentRecord_ToeprintRecord&& from) noexcept + : ComponentsFile_ComponentRecord_ToeprintRecord() { + *this = ::std::move(from); + } + + inline ComponentsFile_ComponentRecord_ToeprintRecord& operator=(const ComponentsFile_ComponentRecord_ToeprintRecord& from) { + CopyFrom(from); + return *this; + } + inline ComponentsFile_ComponentRecord_ToeprintRecord& operator=(ComponentsFile_ComponentRecord_ToeprintRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ComponentsFile_ComponentRecord_ToeprintRecord& default_instance() { + return *internal_default_instance(); + } + static inline const ComponentsFile_ComponentRecord_ToeprintRecord* internal_default_instance() { + return reinterpret_cast( + &_ComponentsFile_ComponentRecord_ToeprintRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(ComponentsFile_ComponentRecord_ToeprintRecord& a, ComponentsFile_ComponentRecord_ToeprintRecord& b) { + a.Swap(&b); + } + inline void Swap(ComponentsFile_ComponentRecord_ToeprintRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ComponentsFile_ComponentRecord_ToeprintRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ComponentsFile_ComponentRecord_ToeprintRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ComponentsFile_ComponentRecord_ToeprintRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const ComponentsFile_ComponentRecord_ToeprintRecord& from) { + ComponentsFile_ComponentRecord_ToeprintRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ComponentsFile_ComponentRecord_ToeprintRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord"; + } + protected: + explicit ComponentsFile_ComponentRecord_ToeprintRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 8, + kPinNumberFieldNumber = 1, + kLocationXFieldNumber = 2, + kLocationYFieldNumber = 3, + kRotationFieldNumber = 4, + kMirrorFieldNumber = 5, + kNetNumberFieldNumber = 6, + kSubnetNumberFieldNumber = 7, + }; + // string name = 8; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // uint32 pinNumber = 1; + void clear_pinnumber(); + uint32_t pinnumber() const; + void set_pinnumber(uint32_t value); + private: + uint32_t _internal_pinnumber() const; + void _internal_set_pinnumber(uint32_t value); + public: + + // float locationX = 2; + void clear_locationx(); + float locationx() const; + void set_locationx(float value); + private: + float _internal_locationx() const; + void _internal_set_locationx(float value); + public: + + // float locationY = 3; + void clear_locationy(); + float locationy() const; + void set_locationy(float value); + private: + float _internal_locationy() const; + void _internal_set_locationy(float value); + public: + + // float rotation = 4; + void clear_rotation(); + float rotation() const; + void set_rotation(float value); + private: + float _internal_rotation() const; + void _internal_set_rotation(float value); + public: + + // bool mirror = 5; + void clear_mirror(); + bool mirror() const; + void set_mirror(bool value); + private: + bool _internal_mirror() const; + void _internal_set_mirror(bool value); + public: + + // uint32 netNumber = 6; + void clear_netnumber(); + uint32_t netnumber() const; + void set_netnumber(uint32_t value); + private: + uint32_t _internal_netnumber() const; + void _internal_set_netnumber(uint32_t value); + public: + + // uint32 subnetNumber = 7; + void clear_subnetnumber(); + uint32_t subnetnumber() const; + void set_subnetnumber(uint32_t value); + private: + uint32_t _internal_subnetnumber() const; + void _internal_set_subnetnumber(uint32_t value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + uint32_t pinnumber_; + float locationx_; + float locationy_; + float rotation_; + bool mirror_; + uint32_t netnumber_; + uint32_t subnetnumber_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_componentsfile_2eproto; +}; +// ------------------------------------------------------------------- + +class ComponentsFile_ComponentRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) */ { + public: + inline ComponentsFile_ComponentRecord() : ComponentsFile_ComponentRecord(nullptr) {} + ~ComponentsFile_ComponentRecord() override; + explicit PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ComponentsFile_ComponentRecord(const ComponentsFile_ComponentRecord& from); + ComponentsFile_ComponentRecord(ComponentsFile_ComponentRecord&& from) noexcept + : ComponentsFile_ComponentRecord() { + *this = ::std::move(from); + } + + inline ComponentsFile_ComponentRecord& operator=(const ComponentsFile_ComponentRecord& from) { + CopyFrom(from); + return *this; + } + inline ComponentsFile_ComponentRecord& operator=(ComponentsFile_ComponentRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ComponentsFile_ComponentRecord& default_instance() { + return *internal_default_instance(); + } + static inline const ComponentsFile_ComponentRecord* internal_default_instance() { + return reinterpret_cast( + &_ComponentsFile_ComponentRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(ComponentsFile_ComponentRecord& a, ComponentsFile_ComponentRecord& b) { + a.Swap(&b); + } + inline void Swap(ComponentsFile_ComponentRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ComponentsFile_ComponentRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ComponentsFile_ComponentRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ComponentsFile_ComponentRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const ComponentsFile_ComponentRecord& from) { + ComponentsFile_ComponentRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ComponentsFile_ComponentRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.ComponentsFile.ComponentRecord"; + } + protected: + explicit ComponentsFile_ComponentRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef ComponentsFile_ComponentRecord_ToeprintRecord ToeprintRecord; + + // accessors ------------------------------------------------------- + + enum : int { + kPropertyRecordsFieldNumber = 11, + kToeprintRecordsFieldNumber = 12, + kCompNameFieldNumber = 6, + kPartNameFieldNumber = 7, + kAttributesFieldNumber = 8, + kPkgRefFieldNumber = 1, + kLocationXFieldNumber = 2, + kLocationYFieldNumber = 3, + kRotationFieldNumber = 4, + kMirrorFieldNumber = 5, + kIdFieldNumber = 9, + kIndexFieldNumber = 10, + }; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + int propertyrecords_size() const; + private: + int _internal_propertyrecords_size() const; + public: + void clear_propertyrecords(); + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* + mutable_propertyrecords(); + private: + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); + public: + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& + propertyrecords() const; + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord toeprintRecords = 12; + int toeprintrecords_size() const; + private: + int _internal_toeprintrecords_size() const; + public: + void clear_toeprintrecords(); + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* mutable_toeprintrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >* + mutable_toeprintrecords(); + private: + const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord& _internal_toeprintrecords(int index) const; + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* _internal_add_toeprintrecords(); + public: + const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord& toeprintrecords(int index) const; + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* add_toeprintrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >& + toeprintrecords() const; + + // string compName = 6; + void clear_compname(); + const std::string& compname() const; + template + void set_compname(ArgT0&& arg0, ArgT... args); + std::string* mutable_compname(); + PROTOBUF_NODISCARD std::string* release_compname(); + void set_allocated_compname(std::string* compname); + private: + const std::string& _internal_compname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_compname(const std::string& value); + std::string* _internal_mutable_compname(); + public: + + // string partName = 7; + void clear_partname(); + const std::string& partname() const; + template + void set_partname(ArgT0&& arg0, ArgT... args); + std::string* mutable_partname(); + PROTOBUF_NODISCARD std::string* release_partname(); + void set_allocated_partname(std::string* partname); + private: + const std::string& _internal_partname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_partname(const std::string& value); + std::string* _internal_mutable_partname(); + public: + + // string attributes = 8; + void clear_attributes(); + const std::string& attributes() const; + template + void set_attributes(ArgT0&& arg0, ArgT... args); + std::string* mutable_attributes(); + PROTOBUF_NODISCARD std::string* release_attributes(); + void set_allocated_attributes(std::string* attributes); + private: + const std::string& _internal_attributes() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_attributes(const std::string& value); + std::string* _internal_mutable_attributes(); + public: + + // uint32 pkgRef = 1; + void clear_pkgref(); + uint32_t pkgref() const; + void set_pkgref(uint32_t value); + private: + uint32_t _internal_pkgref() const; + void _internal_set_pkgref(uint32_t value); + public: + + // float locationX = 2; + void clear_locationx(); + float locationx() const; + void set_locationx(float value); + private: + float _internal_locationx() const; + void _internal_set_locationx(float value); + public: + + // float locationY = 3; + void clear_locationy(); + float locationy() const; + void set_locationy(float value); + private: + float _internal_locationy() const; + void _internal_set_locationy(float value); + public: + + // float rotation = 4; + void clear_rotation(); + float rotation() const; + void set_rotation(float value); + private: + float _internal_rotation() const; + void _internal_set_rotation(float value); + public: + + // bool mirror = 5; + void clear_mirror(); + bool mirror() const; + void set_mirror(bool value); + private: + bool _internal_mirror() const; + void _internal_set_mirror(bool value); + public: + + // uint32 id = 9; + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + public: + + // uint32 index = 10; + void clear_index(); + uint32_t index() const; + void set_index(uint32_t value); + private: + uint32_t _internal_index() const; + void _internal_set_index(uint32_t value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord > toeprintrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr compname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr partname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr attributes_; + uint32_t pkgref_; + float locationx_; + float locationy_; + float rotation_; + bool mirror_; + uint32_t id_; + uint32_t index_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_componentsfile_2eproto; +}; +// ------------------------------------------------------------------- + +class ComponentsFile_ComponentRecordsByNameEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry { +public: + typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntry SuperType; + ComponentsFile_ComponentRecordsByNameEntry_DoNotUse(); + explicit PROTOBUF_CONSTEXPR ComponentsFile_ComponentRecordsByNameEntry_DoNotUse( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + explicit ComponentsFile_ComponentRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena); + void MergeFrom(const ComponentsFile_ComponentRecordsByNameEntry_DoNotUse& other); + static const ComponentsFile_ComponentRecordsByNameEntry_DoNotUse* internal_default_instance() { return reinterpret_cast(&_ComponentsFile_ComponentRecordsByNameEntry_DoNotUse_default_instance_); } + static bool ValidateKey(std::string* s) { + return ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast(s->size()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE, "Odb.Lib.Protobuf.ComponentsFile.ComponentRecordsByNameEntry.key"); + } + static bool ValidateValue(void*) { return true; } + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + friend struct ::TableStruct_componentsfile_2eproto; +}; + +// ------------------------------------------------------------------- + +class ComponentsFile_PropertyRecordsByNameEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry { +public: + typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntry SuperType; + ComponentsFile_PropertyRecordsByNameEntry_DoNotUse(); + explicit PROTOBUF_CONSTEXPR ComponentsFile_PropertyRecordsByNameEntry_DoNotUse( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + explicit ComponentsFile_PropertyRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena); + void MergeFrom(const ComponentsFile_PropertyRecordsByNameEntry_DoNotUse& other); + static const ComponentsFile_PropertyRecordsByNameEntry_DoNotUse* internal_default_instance() { return reinterpret_cast(&_ComponentsFile_PropertyRecordsByNameEntry_DoNotUse_default_instance_); } + static bool ValidateKey(std::string* s) { + return ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(s->data(), static_cast(s->size()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE, "Odb.Lib.Protobuf.ComponentsFile.PropertyRecordsByNameEntry.key"); + } + static bool ValidateValue(void*) { return true; } + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + friend struct ::TableStruct_componentsfile_2eproto; +}; + +// ------------------------------------------------------------------- + +class ComponentsFile final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.ComponentsFile) */ { + public: + inline ComponentsFile() : ComponentsFile(nullptr) {} + ~ComponentsFile() override; + explicit PROTOBUF_CONSTEXPR ComponentsFile(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ComponentsFile(const ComponentsFile& from); + ComponentsFile(ComponentsFile&& from) noexcept + : ComponentsFile() { + *this = ::std::move(from); + } + + inline ComponentsFile& operator=(const ComponentsFile& from) { + CopyFrom(from); + return *this; + } + inline ComponentsFile& operator=(ComponentsFile&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ComponentsFile& default_instance() { + return *internal_default_instance(); + } + static inline const ComponentsFile* internal_default_instance() { + return reinterpret_cast( + &_ComponentsFile_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + friend void swap(ComponentsFile& a, ComponentsFile& b) { + a.Swap(&b); + } + inline void Swap(ComponentsFile* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ComponentsFile* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ComponentsFile* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ComponentsFile& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const ComponentsFile& from) { + ComponentsFile::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ComponentsFile* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.ComponentsFile"; + } + protected: + explicit ComponentsFile(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef ComponentsFile_ComponentRecord ComponentRecord; + + // accessors ------------------------------------------------------- + + enum : int { + kAttributeNamesFieldNumber = 7, + kAttributeTextValuesFieldNumber = 8, + kComponentRecordsFieldNumber = 9, + kComponentRecordsByNameFieldNumber = 10, + kPropertyRecordsFieldNumber = 11, + kPropertyRecordsByNameFieldNumber = 12, + kUnitsFieldNumber = 1, + kNameFieldNumber = 4, + kPathFieldNumber = 5, + kDirectoryFieldNumber = 6, + kIdFieldNumber = 2, + kSideFieldNumber = 3, + }; + // repeated string attributeNames = 7; + int attributenames_size() const; + private: + int _internal_attributenames_size() const; + public: + void clear_attributenames(); + const std::string& attributenames(int index) const; + std::string* mutable_attributenames(int index); + void set_attributenames(int index, const std::string& value); + void set_attributenames(int index, std::string&& value); + void set_attributenames(int index, const char* value); + void set_attributenames(int index, const char* value, size_t size); + std::string* add_attributenames(); + void add_attributenames(const std::string& value); + void add_attributenames(std::string&& value); + void add_attributenames(const char* value); + void add_attributenames(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& attributenames() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_attributenames(); + private: + const std::string& _internal_attributenames(int index) const; + std::string* _internal_add_attributenames(); + public: + + // repeated string attributeTextValues = 8; + int attributetextvalues_size() const; + private: + int _internal_attributetextvalues_size() const; + public: + void clear_attributetextvalues(); + const std::string& attributetextvalues(int index) const; + std::string* mutable_attributetextvalues(int index); + void set_attributetextvalues(int index, const std::string& value); + void set_attributetextvalues(int index, std::string&& value); + void set_attributetextvalues(int index, const char* value); + void set_attributetextvalues(int index, const char* value, size_t size); + std::string* add_attributetextvalues(); + void add_attributetextvalues(const std::string& value); + void add_attributetextvalues(std::string&& value); + void add_attributetextvalues(const char* value); + void add_attributetextvalues(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& attributetextvalues() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* mutable_attributetextvalues(); + private: + const std::string& _internal_attributetextvalues(int index) const; + std::string* _internal_add_attributetextvalues(); + public: + + // repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord componentRecords = 9; + int componentrecords_size() const; + private: + int _internal_componentrecords_size() const; + public: + void clear_componentrecords(); + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* mutable_componentrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* + mutable_componentrecords(); + private: + const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord& _internal_componentrecords(int index) const; + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* _internal_add_componentrecords(); + public: + const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord& componentrecords(int index) const; + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* add_componentrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& + componentrecords() const; + + // map componentRecordsByName = 10; + int componentrecordsbyname_size() const; + private: + int _internal_componentrecordsbyname_size() const; + public: + void clear_componentrecordsbyname(); + private: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& + _internal_componentrecordsbyname() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* + _internal_mutable_componentrecordsbyname(); + public: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& + componentrecordsbyname() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* + mutable_componentrecordsbyname(); + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + int propertyrecords_size() const; + private: + int _internal_propertyrecords_size() const; + public: + void clear_propertyrecords(); + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* + mutable_propertyrecords(); + private: + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); + public: + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& + propertyrecords() const; + + // map propertyRecordsByName = 12; + int propertyrecordsbyname_size() const; + private: + int _internal_propertyrecordsbyname_size() const; + public: + void clear_propertyrecordsbyname(); + private: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >& + _internal_propertyrecordsbyname() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >* + _internal_mutable_propertyrecordsbyname(); + public: + const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >& + propertyrecordsbyname() const; + ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >* + mutable_propertyrecordsbyname(); + + // string units = 1; + void clear_units(); + const std::string& units() const; + template + void set_units(ArgT0&& arg0, ArgT... args); + std::string* mutable_units(); + PROTOBUF_NODISCARD std::string* release_units(); + void set_allocated_units(std::string* units); + private: + const std::string& _internal_units() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_units(const std::string& value); + std::string* _internal_mutable_units(); + public: + + // string name = 4; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string path = 5; + void clear_path(); + const std::string& path() const; + template + void set_path(ArgT0&& arg0, ArgT... args); + std::string* mutable_path(); + PROTOBUF_NODISCARD std::string* release_path(); + void set_allocated_path(std::string* path); + private: + const std::string& _internal_path() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_path(const std::string& value); + std::string* _internal_mutable_path(); + public: + + // string directory = 6; + void clear_directory(); + const std::string& directory() const; + template + void set_directory(ArgT0&& arg0, ArgT... args); + std::string* mutable_directory(); + PROTOBUF_NODISCARD std::string* release_directory(); + void set_allocated_directory(std::string* directory); + private: + const std::string& _internal_directory() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_directory(const std::string& value); + std::string* _internal_mutable_directory(); + public: + + // uint32 id = 2; + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + public: + + // .Odb.Lib.Protobuf.BoardSide side = 3; + void clear_side(); + ::Odb::Lib::Protobuf::BoardSide side() const; + void set_side(::Odb::Lib::Protobuf::BoardSide value); + private: + ::Odb::Lib::Protobuf::BoardSide _internal_side() const; + void _internal_set_side(::Odb::Lib::Protobuf::BoardSide value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.ComponentsFile) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField attributenames_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField attributetextvalues_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord > componentrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::MapField< + ComponentsFile_ComponentRecordsByNameEntry_DoNotUse, + std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> componentrecordsbyname_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::MapField< + ComponentsFile_PropertyRecordsByNameEntry_DoNotUse, + std::string, ::Odb::Lib::Protobuf::PropertyRecord, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> propertyrecordsbyname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr units_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr path_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr directory_; + uint32_t id_; + int side_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_componentsfile_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// ComponentsFile_ComponentRecord_ToeprintRecord + +// uint32 pinNumber = 1; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_pinnumber() { + _impl_.pinnumber_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::_internal_pinnumber() const { + return _impl_.pinnumber_; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::pinnumber() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.pinNumber) + return _internal_pinnumber(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_pinnumber(uint32_t value) { + + _impl_.pinnumber_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_pinnumber(uint32_t value) { + _internal_set_pinnumber(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.pinNumber) +} + +// float locationX = 2; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_locationx() { + _impl_.locationx_ = 0; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::_internal_locationx() const { + return _impl_.locationx_; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::locationx() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.locationX) + return _internal_locationx(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_locationx(float value) { + + _impl_.locationx_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_locationx(float value) { + _internal_set_locationx(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.locationX) +} + +// float locationY = 3; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_locationy() { + _impl_.locationy_ = 0; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::_internal_locationy() const { + return _impl_.locationy_; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::locationy() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.locationY) + return _internal_locationy(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_locationy(float value) { + + _impl_.locationy_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_locationy(float value) { + _internal_set_locationy(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.locationY) +} + +// float rotation = 4; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_rotation() { + _impl_.rotation_ = 0; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::_internal_rotation() const { + return _impl_.rotation_; +} +inline float ComponentsFile_ComponentRecord_ToeprintRecord::rotation() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.rotation) + return _internal_rotation(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_rotation(float value) { + + _impl_.rotation_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_rotation(float value) { + _internal_set_rotation(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.rotation) +} + +// bool mirror = 5; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_mirror() { + _impl_.mirror_ = false; +} +inline bool ComponentsFile_ComponentRecord_ToeprintRecord::_internal_mirror() const { + return _impl_.mirror_; +} +inline bool ComponentsFile_ComponentRecord_ToeprintRecord::mirror() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.mirror) + return _internal_mirror(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_mirror(bool value) { + + _impl_.mirror_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_mirror(bool value) { + _internal_set_mirror(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.mirror) +} + +// uint32 netNumber = 6; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_netnumber() { + _impl_.netnumber_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::_internal_netnumber() const { + return _impl_.netnumber_; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::netnumber() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.netNumber) + return _internal_netnumber(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_netnumber(uint32_t value) { + + _impl_.netnumber_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_netnumber(uint32_t value) { + _internal_set_netnumber(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.netNumber) +} + +// uint32 subnetNumber = 7; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_subnetnumber() { + _impl_.subnetnumber_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::_internal_subnetnumber() const { + return _impl_.subnetnumber_; +} +inline uint32_t ComponentsFile_ComponentRecord_ToeprintRecord::subnetnumber() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.subnetNumber) + return _internal_subnetnumber(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_subnetnumber(uint32_t value) { + + _impl_.subnetnumber_ = value; +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_subnetnumber(uint32_t value) { + _internal_set_subnetnumber(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.subnetNumber) +} + +// string name = 8; +inline void ComponentsFile_ComponentRecord_ToeprintRecord::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& ComponentsFile_ComponentRecord_ToeprintRecord::name() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile_ComponentRecord_ToeprintRecord::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name) +} +inline std::string* ComponentsFile_ComponentRecord_ToeprintRecord::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name) + return _s; +} +inline const std::string& ComponentsFile_ComponentRecord_ToeprintRecord::_internal_name() const { + return _impl_.name_.Get(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord_ToeprintRecord::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord_ToeprintRecord::release_name() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name) + return _impl_.name_.Release(); +} +inline void ComponentsFile_ComponentRecord_ToeprintRecord::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord.name) +} + +// ------------------------------------------------------------------- + +// ComponentsFile_ComponentRecord + +// uint32 pkgRef = 1; +inline void ComponentsFile_ComponentRecord::clear_pkgref() { + _impl_.pkgref_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord::_internal_pkgref() const { + return _impl_.pkgref_; +} +inline uint32_t ComponentsFile_ComponentRecord::pkgref() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.pkgRef) + return _internal_pkgref(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_pkgref(uint32_t value) { + + _impl_.pkgref_ = value; +} +inline void ComponentsFile_ComponentRecord::set_pkgref(uint32_t value) { + _internal_set_pkgref(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.pkgRef) +} + +// float locationX = 2; +inline void ComponentsFile_ComponentRecord::clear_locationx() { + _impl_.locationx_ = 0; +} +inline float ComponentsFile_ComponentRecord::_internal_locationx() const { + return _impl_.locationx_; +} +inline float ComponentsFile_ComponentRecord::locationx() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.locationX) + return _internal_locationx(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_locationx(float value) { + + _impl_.locationx_ = value; +} +inline void ComponentsFile_ComponentRecord::set_locationx(float value) { + _internal_set_locationx(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.locationX) +} + +// float locationY = 3; +inline void ComponentsFile_ComponentRecord::clear_locationy() { + _impl_.locationy_ = 0; +} +inline float ComponentsFile_ComponentRecord::_internal_locationy() const { + return _impl_.locationy_; +} +inline float ComponentsFile_ComponentRecord::locationy() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.locationY) + return _internal_locationy(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_locationy(float value) { + + _impl_.locationy_ = value; +} +inline void ComponentsFile_ComponentRecord::set_locationy(float value) { + _internal_set_locationy(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.locationY) +} + +// float rotation = 4; +inline void ComponentsFile_ComponentRecord::clear_rotation() { + _impl_.rotation_ = 0; +} +inline float ComponentsFile_ComponentRecord::_internal_rotation() const { + return _impl_.rotation_; +} +inline float ComponentsFile_ComponentRecord::rotation() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.rotation) + return _internal_rotation(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_rotation(float value) { + + _impl_.rotation_ = value; +} +inline void ComponentsFile_ComponentRecord::set_rotation(float value) { + _internal_set_rotation(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.rotation) +} + +// bool mirror = 5; +inline void ComponentsFile_ComponentRecord::clear_mirror() { + _impl_.mirror_ = false; +} +inline bool ComponentsFile_ComponentRecord::_internal_mirror() const { + return _impl_.mirror_; +} +inline bool ComponentsFile_ComponentRecord::mirror() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.mirror) + return _internal_mirror(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_mirror(bool value) { + + _impl_.mirror_ = value; +} +inline void ComponentsFile_ComponentRecord::set_mirror(bool value) { + _internal_set_mirror(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.mirror) +} + +// string compName = 6; +inline void ComponentsFile_ComponentRecord::clear_compname() { + _impl_.compname_.ClearToEmpty(); +} +inline const std::string& ComponentsFile_ComponentRecord::compname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName) + return _internal_compname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile_ComponentRecord::set_compname(ArgT0&& arg0, ArgT... args) { + + _impl_.compname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName) +} +inline std::string* ComponentsFile_ComponentRecord::mutable_compname() { + std::string* _s = _internal_mutable_compname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName) + return _s; +} +inline const std::string& ComponentsFile_ComponentRecord::_internal_compname() const { + return _impl_.compname_.Get(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_compname(const std::string& value) { + + _impl_.compname_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::_internal_mutable_compname() { + + return _impl_.compname_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::release_compname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName) + return _impl_.compname_.Release(); +} +inline void ComponentsFile_ComponentRecord::set_allocated_compname(std::string* compname) { + if (compname != nullptr) { + + } else { + + } + _impl_.compname_.SetAllocated(compname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.compname_.IsDefault()) { + _impl_.compname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.compName) +} + +// string partName = 7; +inline void ComponentsFile_ComponentRecord::clear_partname() { + _impl_.partname_.ClearToEmpty(); +} +inline const std::string& ComponentsFile_ComponentRecord::partname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName) + return _internal_partname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile_ComponentRecord::set_partname(ArgT0&& arg0, ArgT... args) { + + _impl_.partname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName) +} +inline std::string* ComponentsFile_ComponentRecord::mutable_partname() { + std::string* _s = _internal_mutable_partname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName) + return _s; +} +inline const std::string& ComponentsFile_ComponentRecord::_internal_partname() const { + return _impl_.partname_.Get(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_partname(const std::string& value) { + + _impl_.partname_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::_internal_mutable_partname() { + + return _impl_.partname_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::release_partname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName) + return _impl_.partname_.Release(); +} +inline void ComponentsFile_ComponentRecord::set_allocated_partname(std::string* partname) { + if (partname != nullptr) { + + } else { + + } + _impl_.partname_.SetAllocated(partname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.partname_.IsDefault()) { + _impl_.partname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.partName) +} + +// string attributes = 8; +inline void ComponentsFile_ComponentRecord::clear_attributes() { + _impl_.attributes_.ClearToEmpty(); +} +inline const std::string& ComponentsFile_ComponentRecord::attributes() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes) + return _internal_attributes(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile_ComponentRecord::set_attributes(ArgT0&& arg0, ArgT... args) { + + _impl_.attributes_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes) +} +inline std::string* ComponentsFile_ComponentRecord::mutable_attributes() { + std::string* _s = _internal_mutable_attributes(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes) + return _s; +} +inline const std::string& ComponentsFile_ComponentRecord::_internal_attributes() const { + return _impl_.attributes_.Get(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_attributes(const std::string& value) { + + _impl_.attributes_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::_internal_mutable_attributes() { + + return _impl_.attributes_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile_ComponentRecord::release_attributes() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes) + return _impl_.attributes_.Release(); +} +inline void ComponentsFile_ComponentRecord::set_allocated_attributes(std::string* attributes) { + if (attributes != nullptr) { + + } else { + + } + _impl_.attributes_.SetAllocated(attributes, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.attributes_.IsDefault()) { + _impl_.attributes_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.attributes) +} + +// uint32 id = 9; +inline void ComponentsFile_ComponentRecord::clear_id() { + _impl_.id_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord::_internal_id() const { + return _impl_.id_; +} +inline uint32_t ComponentsFile_ComponentRecord::id() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.id) + return _internal_id(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_id(uint32_t value) { + + _impl_.id_ = value; +} +inline void ComponentsFile_ComponentRecord::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.id) +} + +// uint32 index = 10; +inline void ComponentsFile_ComponentRecord::clear_index() { + _impl_.index_ = 0u; +} +inline uint32_t ComponentsFile_ComponentRecord::_internal_index() const { + return _impl_.index_; +} +inline uint32_t ComponentsFile_ComponentRecord::index() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.index) + return _internal_index(); +} +inline void ComponentsFile_ComponentRecord::_internal_set_index(uint32_t value) { + + _impl_.index_ = value; +} +inline void ComponentsFile_ComponentRecord::set_index(uint32_t value) { + _internal_set_index(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.index) +} + +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; +inline int ComponentsFile_ComponentRecord::_internal_propertyrecords_size() const { + return _impl_.propertyrecords_.size(); +} +inline int ComponentsFile_ComponentRecord::propertyrecords_size() const { + return _internal_propertyrecords_size(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile_ComponentRecord::mutable_propertyrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.propertyRecords) + return _impl_.propertyrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* +ComponentsFile_ComponentRecord::mutable_propertyrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.propertyRecords) + return &_impl_.propertyrecords_; +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& ComponentsFile_ComponentRecord::_internal_propertyrecords(int index) const { + return _impl_.propertyrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& ComponentsFile_ComponentRecord::propertyrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.propertyRecords) + return _internal_propertyrecords(index); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile_ComponentRecord::_internal_add_propertyrecords() { + return _impl_.propertyrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile_ComponentRecord::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.propertyRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& +ComponentsFile_ComponentRecord::propertyrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.propertyRecords) + return _impl_.propertyrecords_; +} + +// repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.ToeprintRecord toeprintRecords = 12; +inline int ComponentsFile_ComponentRecord::_internal_toeprintrecords_size() const { + return _impl_.toeprintrecords_.size(); +} +inline int ComponentsFile_ComponentRecord::toeprintrecords_size() const { + return _internal_toeprintrecords_size(); +} +inline void ComponentsFile_ComponentRecord::clear_toeprintrecords() { + _impl_.toeprintrecords_.Clear(); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* ComponentsFile_ComponentRecord::mutable_toeprintrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.toeprintRecords) + return _impl_.toeprintrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >* +ComponentsFile_ComponentRecord::mutable_toeprintrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.toeprintRecords) + return &_impl_.toeprintrecords_; +} +inline const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord& ComponentsFile_ComponentRecord::_internal_toeprintrecords(int index) const { + return _impl_.toeprintrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord& ComponentsFile_ComponentRecord::toeprintrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.toeprintRecords) + return _internal_toeprintrecords(index); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* ComponentsFile_ComponentRecord::_internal_add_toeprintrecords() { + return _impl_.toeprintrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* ComponentsFile_ComponentRecord::add_toeprintrecords() { + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord* _add = _internal_add_toeprintrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.toeprintRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord_ToeprintRecord >& +ComponentsFile_ComponentRecord::toeprintrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.ComponentRecord.toeprintRecords) + return _impl_.toeprintrecords_; +} + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ComponentsFile + +// string units = 1; +inline void ComponentsFile::clear_units() { + _impl_.units_.ClearToEmpty(); +} +inline const std::string& ComponentsFile::units() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.units) + return _internal_units(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile::set_units(ArgT0&& arg0, ArgT... args) { + + _impl_.units_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.units) +} +inline std::string* ComponentsFile::mutable_units() { + std::string* _s = _internal_mutable_units(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.units) + return _s; +} +inline const std::string& ComponentsFile::_internal_units() const { + return _impl_.units_.Get(); +} +inline void ComponentsFile::_internal_set_units(const std::string& value) { + + _impl_.units_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile::_internal_mutable_units() { + + return _impl_.units_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile::release_units() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.units) + return _impl_.units_.Release(); +} +inline void ComponentsFile::set_allocated_units(std::string* units) { + if (units != nullptr) { + + } else { + + } + _impl_.units_.SetAllocated(units, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.units_.IsDefault()) { + _impl_.units_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.units) +} + +// uint32 id = 2; +inline void ComponentsFile::clear_id() { + _impl_.id_ = 0u; +} +inline uint32_t ComponentsFile::_internal_id() const { + return _impl_.id_; +} +inline uint32_t ComponentsFile::id() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.id) + return _internal_id(); +} +inline void ComponentsFile::_internal_set_id(uint32_t value) { + + _impl_.id_ = value; +} +inline void ComponentsFile::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.id) +} + +// .Odb.Lib.Protobuf.BoardSide side = 3; +inline void ComponentsFile::clear_side() { + _impl_.side_ = 0; +} +inline ::Odb::Lib::Protobuf::BoardSide ComponentsFile::_internal_side() const { + return static_cast< ::Odb::Lib::Protobuf::BoardSide >(_impl_.side_); +} +inline ::Odb::Lib::Protobuf::BoardSide ComponentsFile::side() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.side) + return _internal_side(); +} +inline void ComponentsFile::_internal_set_side(::Odb::Lib::Protobuf::BoardSide value) { + + _impl_.side_ = value; +} +inline void ComponentsFile::set_side(::Odb::Lib::Protobuf::BoardSide value) { + _internal_set_side(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.side) +} + +// string name = 4; +inline void ComponentsFile::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& ComponentsFile::name() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.name) +} +inline std::string* ComponentsFile::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.name) + return _s; +} +inline const std::string& ComponentsFile::_internal_name() const { + return _impl_.name_.Get(); +} +inline void ComponentsFile::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile::release_name() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.name) + return _impl_.name_.Release(); +} +inline void ComponentsFile::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.name) +} + +// string path = 5; +inline void ComponentsFile::clear_path() { + _impl_.path_.ClearToEmpty(); +} +inline const std::string& ComponentsFile::path() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.path) + return _internal_path(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile::set_path(ArgT0&& arg0, ArgT... args) { + + _impl_.path_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.path) +} +inline std::string* ComponentsFile::mutable_path() { + std::string* _s = _internal_mutable_path(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.path) + return _s; +} +inline const std::string& ComponentsFile::_internal_path() const { + return _impl_.path_.Get(); +} +inline void ComponentsFile::_internal_set_path(const std::string& value) { + + _impl_.path_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile::_internal_mutable_path() { + + return _impl_.path_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile::release_path() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.path) + return _impl_.path_.Release(); +} +inline void ComponentsFile::set_allocated_path(std::string* path) { + if (path != nullptr) { + + } else { + + } + _impl_.path_.SetAllocated(path, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.path_.IsDefault()) { + _impl_.path_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.path) +} + +// string directory = 6; +inline void ComponentsFile::clear_directory() { + _impl_.directory_.ClearToEmpty(); +} +inline const std::string& ComponentsFile::directory() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.directory) + return _internal_directory(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void ComponentsFile::set_directory(ArgT0&& arg0, ArgT... args) { + + _impl_.directory_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.directory) +} +inline std::string* ComponentsFile::mutable_directory() { + std::string* _s = _internal_mutable_directory(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.directory) + return _s; +} +inline const std::string& ComponentsFile::_internal_directory() const { + return _impl_.directory_.Get(); +} +inline void ComponentsFile::_internal_set_directory(const std::string& value) { + + _impl_.directory_.Set(value, GetArenaForAllocation()); +} +inline std::string* ComponentsFile::_internal_mutable_directory() { + + return _impl_.directory_.Mutable(GetArenaForAllocation()); +} +inline std::string* ComponentsFile::release_directory() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.ComponentsFile.directory) + return _impl_.directory_.Release(); +} +inline void ComponentsFile::set_allocated_directory(std::string* directory) { + if (directory != nullptr) { + + } else { + + } + _impl_.directory_.SetAllocated(directory, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.directory_.IsDefault()) { + _impl_.directory_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.ComponentsFile.directory) +} + +// repeated string attributeNames = 7; +inline int ComponentsFile::_internal_attributenames_size() const { + return _impl_.attributenames_.size(); +} +inline int ComponentsFile::attributenames_size() const { + return _internal_attributenames_size(); +} +inline void ComponentsFile::clear_attributenames() { + _impl_.attributenames_.Clear(); +} +inline std::string* ComponentsFile::add_attributenames() { + std::string* _s = _internal_add_attributenames(); + // @@protoc_insertion_point(field_add_mutable:Odb.Lib.Protobuf.ComponentsFile.attributeNames) + return _s; +} +inline const std::string& ComponentsFile::_internal_attributenames(int index) const { + return _impl_.attributenames_.Get(index); +} +inline const std::string& ComponentsFile::attributenames(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.attributeNames) + return _internal_attributenames(index); +} +inline std::string* ComponentsFile::mutable_attributenames(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.attributeNames) + return _impl_.attributenames_.Mutable(index); +} +inline void ComponentsFile::set_attributenames(int index, const std::string& value) { + _impl_.attributenames_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::set_attributenames(int index, std::string&& value) { + _impl_.attributenames_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::set_attributenames(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + _impl_.attributenames_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::set_attributenames(int index, const char* value, size_t size) { + _impl_.attributenames_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline std::string* ComponentsFile::_internal_add_attributenames() { + return _impl_.attributenames_.Add(); +} +inline void ComponentsFile::add_attributenames(const std::string& value) { + _impl_.attributenames_.Add()->assign(value); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::add_attributenames(std::string&& value) { + _impl_.attributenames_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::add_attributenames(const char* value) { + GOOGLE_DCHECK(value != nullptr); + _impl_.attributenames_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline void ComponentsFile::add_attributenames(const char* value, size_t size) { + _impl_.attributenames_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:Odb.Lib.Protobuf.ComponentsFile.attributeNames) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +ComponentsFile::attributenames() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.attributeNames) + return _impl_.attributenames_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +ComponentsFile::mutable_attributenames() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.attributeNames) + return &_impl_.attributenames_; +} + +// repeated string attributeTextValues = 8; +inline int ComponentsFile::_internal_attributetextvalues_size() const { + return _impl_.attributetextvalues_.size(); +} +inline int ComponentsFile::attributetextvalues_size() const { + return _internal_attributetextvalues_size(); +} +inline void ComponentsFile::clear_attributetextvalues() { + _impl_.attributetextvalues_.Clear(); +} +inline std::string* ComponentsFile::add_attributetextvalues() { + std::string* _s = _internal_add_attributetextvalues(); + // @@protoc_insertion_point(field_add_mutable:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) + return _s; +} +inline const std::string& ComponentsFile::_internal_attributetextvalues(int index) const { + return _impl_.attributetextvalues_.Get(index); +} +inline const std::string& ComponentsFile::attributetextvalues(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) + return _internal_attributetextvalues(index); +} +inline std::string* ComponentsFile::mutable_attributetextvalues(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) + return _impl_.attributetextvalues_.Mutable(index); +} +inline void ComponentsFile::set_attributetextvalues(int index, const std::string& value) { + _impl_.attributetextvalues_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::set_attributetextvalues(int index, std::string&& value) { + _impl_.attributetextvalues_.Mutable(index)->assign(std::move(value)); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::set_attributetextvalues(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + _impl_.attributetextvalues_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::set_attributetextvalues(int index, const char* value, size_t size) { + _impl_.attributetextvalues_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline std::string* ComponentsFile::_internal_add_attributetextvalues() { + return _impl_.attributetextvalues_.Add(); +} +inline void ComponentsFile::add_attributetextvalues(const std::string& value) { + _impl_.attributetextvalues_.Add()->assign(value); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::add_attributetextvalues(std::string&& value) { + _impl_.attributetextvalues_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::add_attributetextvalues(const char* value) { + GOOGLE_DCHECK(value != nullptr); + _impl_.attributetextvalues_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline void ComponentsFile::add_attributetextvalues(const char* value, size_t size) { + _impl_.attributetextvalues_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField& +ComponentsFile::attributetextvalues() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) + return _impl_.attributetextvalues_; +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField* +ComponentsFile::mutable_attributetextvalues() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.attributeTextValues) + return &_impl_.attributetextvalues_; +} + +// repeated .Odb.Lib.Protobuf.ComponentsFile.ComponentRecord componentRecords = 9; +inline int ComponentsFile::_internal_componentrecords_size() const { + return _impl_.componentrecords_.size(); +} +inline int ComponentsFile::componentrecords_size() const { + return _internal_componentrecords_size(); +} +inline void ComponentsFile::clear_componentrecords() { + _impl_.componentrecords_.Clear(); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* ComponentsFile::mutable_componentrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.componentRecords) + return _impl_.componentrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* +ComponentsFile::mutable_componentrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.componentRecords) + return &_impl_.componentrecords_; +} +inline const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord& ComponentsFile::_internal_componentrecords(int index) const { + return _impl_.componentrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord& ComponentsFile::componentrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.componentRecords) + return _internal_componentrecords(index); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* ComponentsFile::_internal_add_componentrecords() { + return _impl_.componentrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* ComponentsFile::add_componentrecords() { + ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord* _add = _internal_add_componentrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.componentRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& +ComponentsFile::componentrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.componentRecords) + return _impl_.componentrecords_; +} + +// map componentRecordsByName = 10; +inline int ComponentsFile::_internal_componentrecordsbyname_size() const { + return _impl_.componentrecordsbyname_.size(); +} +inline int ComponentsFile::componentrecordsbyname_size() const { + return _internal_componentrecordsbyname_size(); +} +inline void ComponentsFile::clear_componentrecordsbyname() { + _impl_.componentrecordsbyname_.Clear(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& +ComponentsFile::_internal_componentrecordsbyname() const { + return _impl_.componentrecordsbyname_.GetMap(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >& +ComponentsFile::componentrecordsbyname() const { + // @@protoc_insertion_point(field_map:Odb.Lib.Protobuf.ComponentsFile.componentRecordsByName) + return _internal_componentrecordsbyname(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* +ComponentsFile::_internal_mutable_componentrecordsbyname() { + return _impl_.componentrecordsbyname_.MutableMap(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::ComponentsFile_ComponentRecord >* +ComponentsFile::mutable_componentrecordsbyname() { + // @@protoc_insertion_point(field_mutable_map:Odb.Lib.Protobuf.ComponentsFile.componentRecordsByName) + return _internal_mutable_componentrecordsbyname(); +} + +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; +inline int ComponentsFile::_internal_propertyrecords_size() const { + return _impl_.propertyrecords_.size(); +} +inline int ComponentsFile::propertyrecords_size() const { + return _internal_propertyrecords_size(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile::mutable_propertyrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.ComponentsFile.propertyRecords) + return _impl_.propertyrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* +ComponentsFile::mutable_propertyrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.ComponentsFile.propertyRecords) + return &_impl_.propertyrecords_; +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& ComponentsFile::_internal_propertyrecords(int index) const { + return _impl_.propertyrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& ComponentsFile::propertyrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.ComponentsFile.propertyRecords) + return _internal_propertyrecords(index); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile::_internal_add_propertyrecords() { + return _impl_.propertyrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* ComponentsFile::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.ComponentsFile.propertyRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& +ComponentsFile::propertyrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.ComponentsFile.propertyRecords) + return _impl_.propertyrecords_; +} + +// map propertyRecordsByName = 12; +inline int ComponentsFile::_internal_propertyrecordsbyname_size() const { + return _impl_.propertyrecordsbyname_.size(); +} +inline int ComponentsFile::propertyrecordsbyname_size() const { + return _internal_propertyrecordsbyname_size(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >& +ComponentsFile::_internal_propertyrecordsbyname() const { + return _impl_.propertyrecordsbyname_.GetMap(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >& +ComponentsFile::propertyrecordsbyname() const { + // @@protoc_insertion_point(field_map:Odb.Lib.Protobuf.ComponentsFile.propertyRecordsByName) + return _internal_propertyrecordsbyname(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >* +ComponentsFile::_internal_mutable_propertyrecordsbyname() { + return _impl_.propertyrecordsbyname_.MutableMap(); +} +inline ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::PropertyRecord >* +ComponentsFile::mutable_propertyrecordsbyname() { + // @@protoc_insertion_point(field_mutable_map:Odb.Lib.Protobuf.ComponentsFile.propertyRecordsByName) + return _internal_mutable_propertyrecordsbyname(); +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace Protobuf +} // namespace Lib +} // namespace Odb + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_componentsfile_2eproto diff --git a/OdbDesignLib/ProtoBuf/edadatafile.pb.cc b/OdbDesignLib/ProtoBuf/edadatafile.pb.cc index 1c61134f..7bb43f1c 100644 --- a/OdbDesignLib/ProtoBuf/edadatafile.pb.cc +++ b/OdbDesignLib/ProtoBuf/edadatafile.pb.cc @@ -23,38 +23,22 @@ namespace _pbi = _pb::internal; namespace Odb { namespace Lib { namespace Protobuf { -PROTOBUF_CONSTEXPR EdaDataFile_PropertyRecord::EdaDataFile_PropertyRecord( - ::_pbi::ConstantInitialized): _impl_{ - /*decltype(_impl_._has_bits_)*/{} - , /*decltype(_impl_._cached_size_)*/{} - , /*decltype(_impl_.floatvalues_)*/{} - , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} - , /*decltype(_impl_.value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {} -struct EdaDataFile_PropertyRecordDefaultTypeInternal { - PROTOBUF_CONSTEXPR EdaDataFile_PropertyRecordDefaultTypeInternal() - : _instance(::_pbi::ConstantInitialized{}) {} - ~EdaDataFile_PropertyRecordDefaultTypeInternal() {} - union { - EdaDataFile_PropertyRecord _instance; - }; -}; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EdaDataFile_PropertyRecordDefaultTypeInternal _EdaDataFile_PropertyRecord_default_instance_; -PROTOBUF_CONSTEXPR EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord( +PROTOBUF_CONSTEXPR EdaDataFile_FeatureIdRecord::EdaDataFile_FeatureIdRecord( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_._has_bits_)*/{} , /*decltype(_impl_._cached_size_)*/{} , /*decltype(_impl_.type_)*/0 , /*decltype(_impl_.layernumber_)*/0u , /*decltype(_impl_.featurenumber_)*/0u} {} -struct EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal { - PROTOBUF_CONSTEXPR EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal() +struct EdaDataFile_FeatureIdRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR EdaDataFile_FeatureIdRecordDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} - ~EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal() {} + ~EdaDataFile_FeatureIdRecordDefaultTypeInternal() {} union { - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord _instance; + EdaDataFile_FeatureIdRecord _instance; }; }; -PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal _EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_default_instance_; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EdaDataFile_FeatureIdRecordDefaultTypeInternal _EdaDataFile_FeatureIdRecord_default_instance_; PROTOBUF_CONSTEXPR EdaDataFile_NetRecord_SubnetRecord::EdaDataFile_NetRecord_SubnetRecord( ::_pbi::ConstantInitialized): _impl_{ /*decltype(_impl_._has_bits_)*/{} @@ -150,6 +134,22 @@ struct EdaDataFile_PackageRecordDefaultTypeInternal { }; }; PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EdaDataFile_PackageRecordDefaultTypeInternal _EdaDataFile_PackageRecord_default_instance_; +PROTOBUF_CONSTEXPR EdaDataFile_FeatureGroupRecord::EdaDataFile_FeatureGroupRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_._has_bits_)*/{} + , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_.propertyrecords_)*/{} + , /*decltype(_impl_.featureidrecords_)*/{} + , /*decltype(_impl_.type_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {} +struct EdaDataFile_FeatureGroupRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR EdaDataFile_FeatureGroupRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~EdaDataFile_FeatureGroupRecordDefaultTypeInternal() {} + union { + EdaDataFile_FeatureGroupRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EdaDataFile_FeatureGroupRecordDefaultTypeInternal _EdaDataFile_FeatureGroupRecord_default_instance_; PROTOBUF_CONSTEXPR EdaDataFile_NetRecordsByNameEntry_DoNotUse::EdaDataFile_NetRecordsByNameEntry_DoNotUse( ::_pbi::ConstantInitialized) {} struct EdaDataFile_NetRecordsByNameEntry_DoNotUseDefaultTypeInternal { @@ -183,6 +183,8 @@ PROTOBUF_CONSTEXPR EdaDataFile::EdaDataFile( , /*decltype(_impl_.netrecordsbyname_)*/{::_pbi::ConstantInitialized()} , /*decltype(_impl_.packagerecords_)*/{} , /*decltype(_impl_.packagerecordsbyname_)*/{::_pbi::ConstantInitialized()} + , /*decltype(_impl_.propertyrecords_)*/{} + , /*decltype(_impl_.featuregrouprecords_)*/{} , /*decltype(_impl_.path_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.units_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} , /*decltype(_impl_.source_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}} {} @@ -199,31 +201,19 @@ PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORIT } // namespace Lib } // namespace Odb static ::_pb::Metadata file_level_metadata_edadatafile_2eproto[10]; -static const ::_pb::EnumDescriptor* file_level_enum_descriptors_edadatafile_2eproto[8]; +static const ::_pb::EnumDescriptor* file_level_enum_descriptors_edadatafile_2eproto[7]; static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_edadatafile_2eproto = nullptr; const uint32_t TableStruct_edadatafile_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord, _internal_metadata_), - ~0u, // no _extensions_ - ~0u, // no _oneof_case_ - ~0u, // no _weak_field_map_ - ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord, _impl_.name_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord, _impl_.value_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord, _impl_.floatvalues_), - 0, - 1, - ~0u, - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_._has_bits_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _internal_metadata_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord, _impl_._has_bits_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ ~0u, // no _inlined_string_donated_ - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_.type_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_.layernumber_), - PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_.featurenumber_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord, _impl_.type_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord, _impl_.layernumber_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord, _impl_.featurenumber_), 0, 1, 2, @@ -325,6 +315,18 @@ const uint32_t TableStruct_edadatafile_2eproto::offsets[] PROTOBUF_SECTION_VARIA ~0u, ~0u, ~0u, + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord, _impl_._has_bits_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord, _impl_.type_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord, _impl_.propertyrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord, _impl_.featureidrecords_), + 0, + ~0u, + ~0u, PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse, _has_bits_), PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse, _internal_metadata_), ~0u, // no _extensions_ @@ -361,6 +363,8 @@ const uint32_t TableStruct_edadatafile_2eproto::offsets[] PROTOBUF_SECTION_VARIA PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile, _impl_.netrecordsbyname_), PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile, _impl_.packagerecords_), PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile, _impl_.packagerecordsbyname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile, _impl_.propertyrecords_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::EdaDataFile, _impl_.featuregrouprecords_), 0, 1, 2, @@ -371,129 +375,138 @@ const uint32_t TableStruct_edadatafile_2eproto::offsets[] PROTOBUF_SECTION_VARIA ~0u, ~0u, ~0u, + ~0u, + ~0u, }; static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, 9, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord)}, - { 12, 21, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord)}, - { 24, 38, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord)}, - { 46, 57, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecord)}, - { 62, 70, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse)}, - { 72, 87, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord)}, - { 96, 112, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord)}, + { 0, 9, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord)}, + { 12, 26, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord)}, + { 34, 45, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecord)}, + { 50, 58, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse)}, + { 60, 75, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord)}, + { 84, 100, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecord)}, + { 110, 119, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord)}, { 122, 130, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse)}, { 132, 140, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile_PackageRecordsByNameEntry_DoNotUse)}, - { 142, 158, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile)}, + { 142, 160, -1, sizeof(::Odb::Lib::Protobuf::EdaDataFile)}, }; static const ::_pb::Message* const file_default_instances[] = { - &::Odb::Lib::Protobuf::_EdaDataFile_PropertyRecord_default_instance_._instance, - &::Odb::Lib::Protobuf::_EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_default_instance_._instance, + &::Odb::Lib::Protobuf::_EdaDataFile_FeatureIdRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_NetRecord_SubnetRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_NetRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_PackageRecord_PinRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_PackageRecord_default_instance_._instance, + &::Odb::Lib::Protobuf::_EdaDataFile_FeatureGroupRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_NetRecordsByNameEntry_DoNotUse_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_PackageRecordsByNameEntry_DoNotUse_default_instance_._instance, &::Odb::Lib::Protobuf::_EdaDataFile_default_instance_._instance, }; const char descriptor_table_protodef_edadatafile_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\021edadatafile.proto\022\020Odb.Lib.Protobuf\"\246\033" - "\n\013EdaDataFile\022\021\n\004path\030\001 \001(\tH\000\210\001\001\022\022\n\005unit" - "s\030\002 \001(\tH\001\210\001\001\022\023\n\006source\030\003 \001(\tH\002\210\001\001\022\022\n\nlay" - "erNames\030\004 \003(\t\022\026\n\016attributeNames\030\005 \003(\t\022\033\n" - "\023attributeTextValues\030\006 \003(\t\022;\n\nnetRecords" - "\030\007 \003(\0132\'.Odb.Lib.Protobuf.EdaDataFile.Ne" - "tRecord\022M\n\020netRecordsByName\030\010 \003(\01323.Odb." - "Lib.Protobuf.EdaDataFile.NetRecordsByNam" - "eEntry\022C\n\016packageRecords\030\t \003(\0132+.Odb.Lib" - ".Protobuf.EdaDataFile.PackageRecord\022U\n\024p" - "ackageRecordsByName\030\n \003(\01327.Odb.Lib.Prot" - "obuf.EdaDataFile.PackageRecordsByNameEnt" - "ry\032_\n\016PropertyRecord\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022" - "\022\n\005value\030\002 \001(\tH\001\210\001\001\022\023\n\013floatValues\030\003 \003(\002" - "B\007\n\005_nameB\010\n\006_value\032\211\n\n\tNetRecord\022\021\n\004nam" - "e\030\001 \001(\tH\000\210\001\001\022\037\n\022attributesIdString\030\002 \001(\t" - "H\001\210\001\001\022\022\n\005index\030\003 \001(\rH\002\210\001\001\022K\n\rsubnetRecor" - "ds\030\004 \003(\01324.Odb.Lib.Protobuf.EdaDataFile." - "NetRecord.SubnetRecord\022E\n\017propertyRecord" - "s\030\005 \003(\0132,.Odb.Lib.Protobuf.EdaDataFile.P" - "ropertyRecord\032\365\007\n\014SubnetRecord\022L\n\004type\030\001" - " \001(\01629.Odb.Lib.Protobuf.EdaDataFile.NetR" - "ecord.SubnetRecord.TypeH\000\210\001\001\022^\n\020featureI" - "dRecords\030\002 \003(\0132D.Odb.Lib.Protobuf.EdaDat" - "aFile.NetRecord.SubnetRecord.FeatureIdRe" - "cord\022T\n\010fillType\030\003 \001(\0162=.Odb.Lib.Protobu" - "f.EdaDataFile.NetRecord.SubnetRecord.Fil" - "lTypeH\001\210\001\001\022X\n\ncutoutType\030\004 \001(\0162\?.Odb.Lib" - ".Protobuf.EdaDataFile.NetRecord.SubnetRe" - "cord.CutoutTypeH\002\210\001\001\022\025\n\010fillSize\030\005 \001(\002H\003" - "\210\001\001\022:\n\004side\030\006 \001(\0162\'.Odb.Lib.Protobuf.Eda" - "DataFile.BoardSideH\004\210\001\001\022\034\n\017componentNumb" - "er\030\007 \001(\rH\005\210\001\001\022\033\n\016toeprintNumber\030\010 \001(\rH\006\210" - "\001\001\032\374\001\n\017FeatureIdRecord\022\\\n\004type\030\001 \001(\0162I.O" - "db.Lib.Protobuf.EdaDataFile.NetRecord.Su" - "bnetRecord.FeatureIdRecord.TypeH\000\210\001\001\022\030\n\013" - "layerNumber\030\002 \001(\rH\001\210\001\001\022\032\n\rfeatureNumber\030" - "\003 \001(\rH\002\210\001\001\"*\n\004Type\022\n\n\006COPPER\020\000\022\014\n\010LAMINA" - "TE\020\001\022\010\n\004HOLE\020\002B\007\n\005_typeB\016\n\014_layerNumberB" - "\020\n\016_featureNumber\"3\n\004Type\022\007\n\003VIA\020\000\022\t\n\005TR" - "ACE\020\001\022\t\n\005PLANE\020\002\022\014\n\010TOEPRINT\020\003\"\"\n\010FillTy" - "pe\022\t\n\005SOLID\020\000\022\013\n\007OUTLINE\020\001\"\?\n\nCutoutType" - "\022\n\n\006CIRCLE\020\000\022\r\n\tRECTANGLE\020\001\022\013\n\007OCTAGON\020\002" - "\022\t\n\005EXACT\020\003B\007\n\005_typeB\013\n\t_fillTypeB\r\n\013_cu" - "toutTypeB\013\n\t_fillSizeB\007\n\005_sideB\022\n\020_compo" - "nentNumberB\021\n\017_toeprintNumberB\007\n\005_nameB\025" - "\n\023_attributesIdStringB\010\n\006_index\032\360\n\n\rPack" - "ageRecord\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022\022\n\005pitch\030\002 " - "\001(\002H\001\210\001\001\022\021\n\004xMin\030\003 \001(\002H\002\210\001\001\022\021\n\004yMin\030\004 \001(" - "\002H\003\210\001\001\022\021\n\004xMax\030\005 \001(\002H\004\210\001\001\022\021\n\004yMax\030\006 \001(\002H" - "\005\210\001\001\022\037\n\022attributesIdString\030\007 \001(\tH\006\210\001\001\022I\n" - "\npinRecords\030\010 \003(\01325.Odb.Lib.Protobuf.Eda" - "DataFile.PackageRecord.PinRecord\022[\n\020pinR" - "ecordsByName\030\t \003(\0132A.Odb.Lib.Protobuf.Ed" - "aDataFile.PackageRecord.PinRecordsByName" - "Entry\022E\n\017propertyRecords\030\n \003(\0132,.Odb.Lib" - ".Protobuf.EdaDataFile.PropertyRecord\032n\n\025" - "PinRecordsByNameEntry\022\013\n\003key\030\001 \001(\t\022D\n\005va" - "lue\030\002 \001(\01325.Odb.Lib.Protobuf.EdaDataFile" - ".PackageRecord.PinRecord:\0028\001\032\235\006\n\tPinReco" - "rd\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022M\n\004type\030\002 \001(\0162:.Od" + "\n\021edadatafile.proto\022\020Odb.Lib.Protobuf\032\014c" + "ommon.proto\032\013enums.proto\"\222\034\n\013EdaDataFile" + "\022\021\n\004path\030\001 \001(\tH\000\210\001\001\022\022\n\005units\030\002 \001(\tH\001\210\001\001\022" + "\023\n\006source\030\003 \001(\tH\002\210\001\001\022\022\n\nlayerNames\030\004 \003(\t" + "\022\026\n\016attributeNames\030\005 \003(\t\022\033\n\023attributeTex" + "tValues\030\006 \003(\t\022;\n\nnetRecords\030\007 \003(\0132\'.Odb." + "Lib.Protobuf.EdaDataFile.NetRecord\022M\n\020ne" + "tRecordsByName\030\010 \003(\01323.Odb.Lib.Protobuf." + "EdaDataFile.NetRecordsByNameEntry\022C\n\016pac" + "kageRecords\030\t \003(\0132+.Odb.Lib.Protobuf.Eda" + "DataFile.PackageRecord\022U\n\024packageRecords" + "ByName\030\n \003(\01327.Odb.Lib.Protobuf.EdaDataF" + "ile.PackageRecordsByNameEntry\0229\n\017propert" + "yRecords\030\013 \003(\0132 .Odb.Lib.Protobuf.Proper" + "tyRecord\022M\n\023featureGroupRecords\030\014 \003(\01320." + "Odb.Lib.Protobuf.EdaDataFile.FeatureGrou" + "pRecord\032\345\001\n\017FeatureIdRecord\022E\n\004type\030\001 \001(" + "\01622.Odb.Lib.Protobuf.EdaDataFile.Feature" + "IdRecord.TypeH\000\210\001\001\022\030\n\013layerNumber\030\002 \001(\rH" + "\001\210\001\001\022\032\n\rfeatureNumber\030\003 \001(\rH\002\210\001\001\"*\n\004Type" + "\022\n\n\006COPPER\020\000\022\014\n\010LAMINATE\020\001\022\010\n\004HOLE\020\002B\007\n\005" + "_typeB\016\n\014_layerNumberB\020\n\016_featureNumber\032" + "\333\007\n\tNetRecord\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022\037\n\022attr" + "ibutesIdString\030\002 \001(\tH\001\210\001\001\022\022\n\005index\030\003 \001(\r" + "H\002\210\001\001\022K\n\rsubnetRecords\030\004 \003(\01324.Odb.Lib.P" + "rotobuf.EdaDataFile.NetRecord.SubnetReco" + "rd\0229\n\017propertyRecords\030\005 \003(\0132 .Odb.Lib.Pr" + "otobuf.PropertyRecord\032\323\005\n\014SubnetRecord\022L" + "\n\004type\030\001 \001(\01629.Odb.Lib.Protobuf.EdaDataF" + "ile.NetRecord.SubnetRecord.TypeH\000\210\001\001\022G\n\020" + "featureIdRecords\030\002 \003(\0132-.Odb.Lib.Protobu" + "f.EdaDataFile.FeatureIdRecord\022T\n\010fillTyp" + "e\030\003 \001(\0162=.Odb.Lib.Protobuf.EdaDataFile.N" + "etRecord.SubnetRecord.FillTypeH\001\210\001\001\022X\n\nc" + "utoutType\030\004 \001(\0162\?.Odb.Lib.Protobuf.EdaDa" + "taFile.NetRecord.SubnetRecord.CutoutType" + "H\002\210\001\001\022\025\n\010fillSize\030\005 \001(\002H\003\210\001\001\022.\n\004side\030\006 \001" + "(\0162\033.Odb.Lib.Protobuf.BoardSideH\004\210\001\001\022\034\n\017" + "componentNumber\030\007 \001(\rH\005\210\001\001\022\033\n\016toeprintNu" + "mber\030\010 \001(\rH\006\210\001\001\"3\n\004Type\022\007\n\003VIA\020\000\022\t\n\005TRAC" + "E\020\001\022\t\n\005PLANE\020\002\022\014\n\010TOEPRINT\020\003\"\"\n\010FillType" + "\022\t\n\005SOLID\020\000\022\013\n\007OUTLINE\020\001\"\?\n\nCutoutType\022\n" + "\n\006CIRCLE\020\000\022\r\n\tRECTANGLE\020\001\022\013\n\007OCTAGON\020\002\022\t" + "\n\005EXACT\020\003B\007\n\005_typeB\013\n\t_fillTypeB\r\n\013_cuto" + "utTypeB\013\n\t_fillSizeB\007\n\005_sideB\022\n\020_compone" + "ntNumberB\021\n\017_toeprintNumberB\007\n\005_nameB\025\n\023" + "_attributesIdStringB\010\n\006_index\032\344\n\n\rPackag" + "eRecord\022\021\n\004name\030\001 \001(\tH\000\210\001\001\022\022\n\005pitch\030\002 \001(" + "\002H\001\210\001\001\022\021\n\004xMin\030\003 \001(\002H\002\210\001\001\022\021\n\004yMin\030\004 \001(\002H" + "\003\210\001\001\022\021\n\004xMax\030\005 \001(\002H\004\210\001\001\022\021\n\004yMax\030\006 \001(\002H\005\210" + "\001\001\022\037\n\022attributesIdString\030\007 \001(\tH\006\210\001\001\022I\n\np" + "inRecords\030\010 \003(\01325.Odb.Lib.Protobuf.EdaDa" + "taFile.PackageRecord.PinRecord\022[\n\020pinRec" + "ordsByName\030\t \003(\0132A.Odb.Lib.Protobuf.EdaD" + "ataFile.PackageRecord.PinRecordsByNameEn" + "try\0229\n\017propertyRecords\030\n \003(\0132 .Odb.Lib.P" + "rotobuf.PropertyRecord\032n\n\025PinRecordsByNa" + "meEntry\022\013\n\003key\030\001 \001(\t\022D\n\005value\030\002 \001(\01325.Od" "b.Lib.Protobuf.EdaDataFile.PackageRecord" - ".PinRecord.TypeH\001\210\001\001\022\024\n\007xCenter\030\003 \001(\002H\002\210" - "\001\001\022\024\n\007yCenter\030\004 \001(\002H\003\210\001\001\022\035\n\020finishedHole" - "Size\030\005 \001(\002H\004\210\001\001\022a\n\016electricalType\030\006 \001(\0162" - "D.Odb.Lib.Protobuf.EdaDataFile.PackageRe" - "cord.PinRecord.ElectricalTypeH\005\210\001\001\022W\n\tmo" - "untType\030\007 \001(\0162\?.Odb.Lib.Protobuf.EdaData" - "File.PackageRecord.PinRecord.MountTypeH\006" - "\210\001\001\022\017\n\002id\030\010 \001(\rH\007\210\001\001\022\022\n\005index\030\t \001(\rH\010\210\001\001" - "\"0\n\004Type\022\020\n\014THROUGH_HOLE\020\000\022\t\n\005BLIND\020\001\022\013\n" - "\007SURFACE\020\002\"C\n\016ElectricalType\022\016\n\nELECTRIC" - "AL\020\000\022\022\n\016NON_ELECTRICAL\020\001\022\r\n\tUNDEFINED\020\002\"" - "\231\001\n\tMountType\022\007\n\003SMT\020\000\022\027\n\023RECOMMENDED_SM" - "T_PAD\020\001\022\023\n\017MT_THROUGH_HOLE\020\002\022\034\n\030RECOMMEN" - "DED_THROUGH_HOLE\020\003\022\014\n\010PRESSFIT\020\004\022\r\n\tNON_" - "BOARD\020\005\022\010\n\004HOLE\020\006\022\020\n\014MT_UNDEFINED\020\007B\007\n\005_" - "nameB\007\n\005_typeB\n\n\010_xCenterB\n\n\010_yCenterB\023\n" - "\021_finishedHoleSizeB\021\n\017_electricalTypeB\014\n" - "\n_mountTypeB\005\n\003_idB\010\n\006_indexB\007\n\005_nameB\010\n" - "\006_pitchB\007\n\005_xMinB\007\n\005_yMinB\007\n\005_xMaxB\007\n\005_y" - "MaxB\025\n\023_attributesIdString\032`\n\025NetRecords" - "ByNameEntry\022\013\n\003key\030\001 \001(\t\0226\n\005value\030\002 \001(\0132" - "\'.Odb.Lib.Protobuf.EdaDataFile.NetRecord" - ":\0028\001\032h\n\031PackageRecordsByNameEntry\022\013\n\003key" - "\030\001 \001(\t\022:\n\005value\030\002 \001(\0132+.Odb.Lib.Protobuf" - ".EdaDataFile.PackageRecord:\0028\001\" \n\tBoardS" - "ide\022\007\n\003TOP\020\000\022\n\n\006BOTTOM\020\001B\007\n\005_pathB\010\n\006_un" - "itsB\t\n\007_sourceb\006proto3" + ".PinRecord:\0028\001\032\235\006\n\tPinRecord\022\021\n\004name\030\001 \001" + "(\tH\000\210\001\001\022M\n\004type\030\002 \001(\0162:.Odb.Lib.Protobuf" + ".EdaDataFile.PackageRecord.PinRecord.Typ" + "eH\001\210\001\001\022\024\n\007xCenter\030\003 \001(\002H\002\210\001\001\022\024\n\007yCenter\030" + "\004 \001(\002H\003\210\001\001\022\035\n\020finishedHoleSize\030\005 \001(\002H\004\210\001" + "\001\022a\n\016electricalType\030\006 \001(\0162D.Odb.Lib.Prot" + "obuf.EdaDataFile.PackageRecord.PinRecord" + ".ElectricalTypeH\005\210\001\001\022W\n\tmountType\030\007 \001(\0162" + "\?.Odb.Lib.Protobuf.EdaDataFile.PackageRe" + "cord.PinRecord.MountTypeH\006\210\001\001\022\017\n\002id\030\010 \001(" + "\rH\007\210\001\001\022\022\n\005index\030\t \001(\rH\010\210\001\001\"0\n\004Type\022\020\n\014TH" + "ROUGH_HOLE\020\000\022\t\n\005BLIND\020\001\022\013\n\007SURFACE\020\002\"C\n\016" + "ElectricalType\022\016\n\nELECTRICAL\020\000\022\022\n\016NON_EL" + "ECTRICAL\020\001\022\r\n\tUNDEFINED\020\002\"\231\001\n\tMountType\022" + "\007\n\003SMT\020\000\022\027\n\023RECOMMENDED_SMT_PAD\020\001\022\023\n\017MT_" + "THROUGH_HOLE\020\002\022\034\n\030RECOMMENDED_THROUGH_HO" + "LE\020\003\022\014\n\010PRESSFIT\020\004\022\r\n\tNON_BOARD\020\005\022\010\n\004HOL" + "E\020\006\022\020\n\014MT_UNDEFINED\020\007B\007\n\005_nameB\007\n\005_typeB" + "\n\n\010_xCenterB\n\n\010_yCenterB\023\n\021_finishedHole" + "SizeB\021\n\017_electricalTypeB\014\n\n_mountTypeB\005\n" + "\003_idB\010\n\006_indexB\007\n\005_nameB\010\n\006_pitchB\007\n\005_xM" + "inB\007\n\005_yMinB\007\n\005_xMaxB\007\n\005_yMaxB\025\n\023_attrib" + "utesIdString\032\264\001\n\022FeatureGroupRecord\022\021\n\004t" + "ype\030\001 \001(\tH\000\210\001\001\0229\n\017propertyRecords\030\002 \003(\0132" + " .Odb.Lib.Protobuf.PropertyRecord\022G\n\020fea" + "tureIdRecords\030\003 \003(\0132-.Odb.Lib.Protobuf.E" + "daDataFile.FeatureIdRecordB\007\n\005_type\032`\n\025N" + "etRecordsByNameEntry\022\013\n\003key\030\001 \001(\t\0226\n\005val" + "ue\030\002 \001(\0132\'.Odb.Lib.Protobuf.EdaDataFile." + "NetRecord:\0028\001\032h\n\031PackageRecordsByNameEnt" + "ry\022\013\n\003key\030\001 \001(\t\022:\n\005value\030\002 \001(\0132+.Odb.Lib" + ".Protobuf.EdaDataFile.PackageRecord:\0028\001B" + "\007\n\005_pathB\010\n\006_unitsB\t\n\007_sourceb\006proto3" ; +static const ::_pbi::DescriptorTable* const descriptor_table_edadatafile_2eproto_deps[2] = { + &::descriptor_table_common_2eproto, + &::descriptor_table_enums_2eproto, +}; static ::_pbi::once_flag descriptor_table_edadatafile_2eproto_once; const ::_pbi::DescriptorTable descriptor_table_edadatafile_2eproto = { - false, false, 3542, descriptor_table_protodef_edadatafile_2eproto, + false, false, 3677, descriptor_table_protodef_edadatafile_2eproto, "edadatafile.proto", - &descriptor_table_edadatafile_2eproto_once, nullptr, 0, 10, + &descriptor_table_edadatafile_2eproto_once, descriptor_table_edadatafile_2eproto_deps, 2, 10, schemas, file_default_instances, TableStruct_edadatafile_2eproto::offsets, file_level_metadata_edadatafile_2eproto, file_level_enum_descriptors_edadatafile_2eproto, file_level_service_descriptors_edadatafile_2eproto, @@ -507,11 +520,11 @@ PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_in namespace Odb { namespace Lib { namespace Protobuf { -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor() { +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_FeatureIdRecord_Type_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_edadatafile_2eproto); return file_level_enum_descriptors_edadatafile_2eproto[0]; } -bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_IsValid(int value) { +bool EdaDataFile_FeatureIdRecord_Type_IsValid(int value) { switch (value) { case 0: case 1: @@ -523,12 +536,12 @@ bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_IsValid(int value) } #if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::COPPER; -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::LAMINATE; -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::HOLE; -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::Type_MIN; -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::Type_MAX; -constexpr int EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::Type_ARRAYSIZE; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::COPPER; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::LAMINATE; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::HOLE; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::Type_MIN; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::Type_MAX; +constexpr int EdaDataFile_FeatureIdRecord::Type_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_NetRecord_SubnetRecord_Type_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_edadatafile_2eproto); @@ -680,100 +693,61 @@ constexpr EdaDataFile_PackageRecord_PinRecord_MountType EdaDataFile_PackageRecor constexpr EdaDataFile_PackageRecord_PinRecord_MountType EdaDataFile_PackageRecord_PinRecord::MountType_MAX; constexpr int EdaDataFile_PackageRecord_PinRecord::MountType_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_BoardSide_descriptor() { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_edadatafile_2eproto); - return file_level_enum_descriptors_edadatafile_2eproto[7]; -} -bool EdaDataFile_BoardSide_IsValid(int value) { - switch (value) { - case 0: - case 1: - return true; - default: - return false; - } -} - -#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) -constexpr EdaDataFile_BoardSide EdaDataFile::TOP; -constexpr EdaDataFile_BoardSide EdaDataFile::BOTTOM; -constexpr EdaDataFile_BoardSide EdaDataFile::BoardSide_MIN; -constexpr EdaDataFile_BoardSide EdaDataFile::BoardSide_MAX; -constexpr int EdaDataFile::BoardSide_ARRAYSIZE; -#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) // =================================================================== -class EdaDataFile_PropertyRecord::_Internal { +class EdaDataFile_FeatureIdRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_name(HasBits* has_bits) { + using HasBits = decltype(std::declval()._impl_._has_bits_); + static void set_has_type(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_value(HasBits* has_bits) { + static void set_has_layernumber(HasBits* has_bits) { (*has_bits)[0] |= 2u; } + static void set_has_featurenumber(HasBits* has_bits) { + (*has_bits)[0] |= 4u; + } }; -EdaDataFile_PropertyRecord::EdaDataFile_PropertyRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +EdaDataFile_FeatureIdRecord::EdaDataFile_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) } -EdaDataFile_PropertyRecord::EdaDataFile_PropertyRecord(const EdaDataFile_PropertyRecord& from) +EdaDataFile_FeatureIdRecord::EdaDataFile_FeatureIdRecord(const EdaDataFile_FeatureIdRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_PropertyRecord* const _this = this; (void)_this; + EdaDataFile_FeatureIdRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.floatvalues_){from._impl_.floatvalues_} - , decltype(_impl_.name_){} - , decltype(_impl_.value_){}}; + , decltype(_impl_.type_){} + , decltype(_impl_.layernumber_){} + , decltype(_impl_.featurenumber_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_name()) { - _this->_impl_.name_.Set(from._internal_name(), - _this->GetArenaForAllocation()); - } - _impl_.value_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.value_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_value()) { - _this->_impl_.value_.Set(from._internal_value(), - _this->GetArenaForAllocation()); - } - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) + ::memcpy(&_impl_.type_, &from._impl_.type_, + static_cast(reinterpret_cast(&_impl_.featurenumber_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.featurenumber_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) } -inline void EdaDataFile_PropertyRecord::SharedCtor( +inline void EdaDataFile_FeatureIdRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.floatvalues_){arena} - , decltype(_impl_.name_){} - , decltype(_impl_.value_){} + , decltype(_impl_.type_){0} + , decltype(_impl_.layernumber_){0u} + , decltype(_impl_.featurenumber_){0u} }; - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.value_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.value_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } -EdaDataFile_PropertyRecord::~EdaDataFile_PropertyRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) +EdaDataFile_FeatureIdRecord::~EdaDataFile_FeatureIdRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; return; @@ -781,72 +755,61 @@ EdaDataFile_PropertyRecord::~EdaDataFile_PropertyRecord() { SharedDtor(); } -inline void EdaDataFile_PropertyRecord::SharedDtor() { +inline void EdaDataFile_FeatureIdRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.floatvalues_.~RepeatedField(); - _impl_.name_.Destroy(); - _impl_.value_.Destroy(); } -void EdaDataFile_PropertyRecord::SetCachedSize(int size) const { +void EdaDataFile_FeatureIdRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_PropertyRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) +void EdaDataFile_FeatureIdRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - _impl_.floatvalues_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000002u) { - _impl_.value_.ClearNonDefaultToEmpty(); - } + if (cached_has_bits & 0x00000007u) { + ::memset(&_impl_.type_, 0, static_cast( + reinterpret_cast(&_impl_.featurenumber_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.featurenumber_)); } _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_PropertyRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_FeatureIdRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::_pbi::ReadTag(ptr, &tag); switch (tag >> 3) { - // optional string name = 1; + // optional .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.Type type = 1; case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_name(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name")); + _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type>(val)); } else goto handle_unusual; continue; - // optional string value = 2; + // optional uint32 layerNumber = 2; case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - auto str = _internal_mutable_value(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + _Internal::set_has_layernumber(&has_bits); + _impl_.layernumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value")); } else goto handle_unusual; continue; - // repeated float floatValues = 3; + // optional uint32 featureNumber = 3; case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { - ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFloatParser(_internal_mutable_floatvalues(), ptr, ctx); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { + _Internal::set_has_featurenumber(&has_bits); + _impl_.featurenumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); CHK_(ptr); - } else if (static_cast(tag) == 29) { - _internal_add_floatvalues(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr)); - ptr += sizeof(float); } else goto handle_unusual; continue; @@ -874,141 +837,124 @@ const char* EdaDataFile_PropertyRecord::_InternalParse(const char* ptr, ::_pbi:: #undef CHK_ } -uint8_t* EdaDataFile_PropertyRecord::_InternalSerialize( +uint8_t* EdaDataFile_FeatureIdRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // optional string name = 1; - if (_internal_has_name()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_name().data(), static_cast(this->_internal_name().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name"); - target = stream->WriteStringMaybeAliased( - 1, this->_internal_name(), target); + // optional .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.Type type = 1; + if (_internal_has_type()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 1, this->_internal_type(), target); } - // optional string value = 2; - if (_internal_has_value()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_value().data(), static_cast(this->_internal_value().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value"); - target = stream->WriteStringMaybeAliased( - 2, this->_internal_value(), target); + // optional uint32 layerNumber = 2; + if (_internal_has_layernumber()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_layernumber(), target); } - // repeated float floatValues = 3; - if (this->_internal_floatvalues_size() > 0) { - target = stream->WriteFixedPacked(3, _internal_floatvalues(), target); + // optional uint32 featureNumber = 3; + if (_internal_has_featurenumber()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_featurenumber(), target); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) return target; } -size_t EdaDataFile_PropertyRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) +size_t EdaDataFile_FeatureIdRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated float floatValues = 3; - { - unsigned int count = static_cast(this->_internal_floatvalues_size()); - size_t data_size = 4UL * count; - if (data_size > 0) { - total_size += 1 + - ::_pbi::WireFormatLite::Int32Size(static_cast(data_size)); - } - total_size += data_size; - } - cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - // optional string name = 1; + if (cached_has_bits & 0x00000007u) { + // optional .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.Type type = 1; if (cached_has_bits & 0x00000001u) { total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_name()); + ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); } - // optional string value = 2; + // optional uint32 layerNumber = 2; if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_value()); + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_layernumber()); + } + + // optional uint32 featureNumber = 3; + if (cached_has_bits & 0x00000004u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_featurenumber()); } } return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_PropertyRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_FeatureIdRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_PropertyRecord::MergeImpl + EdaDataFile_FeatureIdRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_PropertyRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_FeatureIdRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_PropertyRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) +void EdaDataFile_FeatureIdRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - _this->_impl_.floatvalues_.MergeFrom(from._impl_.floatvalues_); cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { + if (cached_has_bits & 0x00000007u) { if (cached_has_bits & 0x00000001u) { - _this->_internal_set_name(from._internal_name()); + _this->_impl_.type_ = from._impl_.type_; } if (cached_has_bits & 0x00000002u) { - _this->_internal_set_value(from._internal_value()); + _this->_impl_.layernumber_ = from._impl_.layernumber_; + } + if (cached_has_bits & 0x00000004u) { + _this->_impl_.featurenumber_ = from._impl_.featurenumber_; } + _this->_impl_._has_bits_[0] |= cached_has_bits; } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_PropertyRecord::CopyFrom(const EdaDataFile_PropertyRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) +void EdaDataFile_FeatureIdRecord::CopyFrom(const EdaDataFile_FeatureIdRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_PropertyRecord::IsInitialized() const { +bool EdaDataFile_FeatureIdRecord::IsInitialized() const { return true; } -void EdaDataFile_PropertyRecord::InternalSwap(EdaDataFile_PropertyRecord* other) { +void EdaDataFile_FeatureIdRecord::InternalSwap(EdaDataFile_FeatureIdRecord* other) { using std::swap; - auto* lhs_arena = GetArenaForAllocation(); - auto* rhs_arena = other->GetArenaForAllocation(); _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.floatvalues_.InternalSwap(&other->_impl_.floatvalues_); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.name_, lhs_arena, - &other->_impl_.name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.value_, lhs_arena, - &other->_impl_.value_, rhs_arena - ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(EdaDataFile_FeatureIdRecord, _impl_.featurenumber_) + + sizeof(EdaDataFile_FeatureIdRecord::_impl_.featurenumber_) + - PROTOBUF_FIELD_OFFSET(EdaDataFile_FeatureIdRecord, _impl_.type_)>( + reinterpret_cast(&_impl_.type_), + reinterpret_cast(&other->_impl_.type_)); } -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PropertyRecord::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_FeatureIdRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[0]); @@ -1016,58 +962,80 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PropertyRecord::GetMetadata() cons // =================================================================== -class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_Internal { +class EdaDataFile_NetRecord_SubnetRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); + using HasBits = decltype(std::declval()._impl_._has_bits_); static void set_has_type(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_layernumber(HasBits* has_bits) { + static void set_has_filltype(HasBits* has_bits) { (*has_bits)[0] |= 2u; } - static void set_has_featurenumber(HasBits* has_bits) { + static void set_has_cutouttype(HasBits* has_bits) { (*has_bits)[0] |= 4u; } + static void set_has_fillsize(HasBits* has_bits) { + (*has_bits)[0] |= 8u; + } + static void set_has_side(HasBits* has_bits) { + (*has_bits)[0] |= 16u; + } + static void set_has_componentnumber(HasBits* has_bits) { + (*has_bits)[0] |= 32u; + } + static void set_has_toeprintnumber(HasBits* has_bits) { + (*has_bits)[0] |= 64u; + } }; -EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +EdaDataFile_NetRecord_SubnetRecord::EdaDataFile_NetRecord_SubnetRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) } -EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from) +EdaDataFile_NetRecord_SubnetRecord::EdaDataFile_NetRecord_SubnetRecord(const EdaDataFile_NetRecord_SubnetRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* const _this = this; (void)_this; + EdaDataFile_NetRecord_SubnetRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.featureidrecords_){from._impl_.featureidrecords_} , decltype(_impl_.type_){} - , decltype(_impl_.layernumber_){} - , decltype(_impl_.featurenumber_){}}; + , decltype(_impl_.filltype_){} + , decltype(_impl_.cutouttype_){} + , decltype(_impl_.fillsize_){} + , decltype(_impl_.side_){} + , decltype(_impl_.componentnumber_){} + , decltype(_impl_.toeprintnumber_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); ::memcpy(&_impl_.type_, &from._impl_.type_, - static_cast(reinterpret_cast(&_impl_.featurenumber_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.featurenumber_)); - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) + static_cast(reinterpret_cast(&_impl_.toeprintnumber_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.toeprintnumber_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::SharedCtor( +inline void EdaDataFile_NetRecord_SubnetRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.featureidrecords_){arena} , decltype(_impl_.type_){0} - , decltype(_impl_.layernumber_){0u} - , decltype(_impl_.featurenumber_){0u} + , decltype(_impl_.filltype_){0} + , decltype(_impl_.cutouttype_){0} + , decltype(_impl_.fillsize_){0} + , decltype(_impl_.side_){0} + , decltype(_impl_.componentnumber_){0u} + , decltype(_impl_.toeprintnumber_){0u} }; } -EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::~EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) +EdaDataFile_NetRecord_SubnetRecord::~EdaDataFile_NetRecord_SubnetRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; return; @@ -1075,65 +1043,116 @@ EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::~EdaDataFile_NetRecord_Subne SharedDtor(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::SharedDtor() { +inline void EdaDataFile_NetRecord_SubnetRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.featureidrecords_.~RepeatedPtrField(); } -void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::SetCachedSize(int size) const { +void EdaDataFile_NetRecord_SubnetRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) +void EdaDataFile_NetRecord_SubnetRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + _impl_.featureidrecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { + if (cached_has_bits & 0x0000007fu) { ::memset(&_impl_.type_, 0, static_cast( - reinterpret_cast(&_impl_.featurenumber_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.featurenumber_)); + reinterpret_cast(&_impl_.toeprintnumber_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.toeprintnumber_)); } _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_NetRecord_SubnetRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::_pbi::ReadTag(ptr, &tag); switch (tag >> 3) { - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.Type type = 1; + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; case 1: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); CHK_(ptr); - _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type>(val)); + _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_Type>(val)); } else goto handle_unusual; continue; - // optional uint32 layerNumber = 2; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 2; case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - _Internal::set_has_layernumber(&has_bits); - _impl_.layernumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_featureidrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); } else goto handle_unusual; continue; - // optional uint32 featureNumber = 3; + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; case 3: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_featurenumber(&has_bits); - _impl_.featurenumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); CHK_(ptr); + _internal_set_filltype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FillType>(val)); } else goto handle_unusual; continue; - default: + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_cutouttype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_CutoutType>(val)); + } else + goto handle_unusual; + continue; + // optional float fillSize = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 45)) { + _Internal::set_has_fillsize(&has_bits); + _impl_.fillsize_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // optional .Odb.Lib.Protobuf.BoardSide side = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_side(static_cast<::Odb::Lib::Protobuf::BoardSide>(val)); + } else + goto handle_unusual; + continue; + // optional uint32 componentNumber = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { + _Internal::set_has_componentnumber(&has_bits); + _impl_.componentnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // optional uint32 toeprintNumber = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { + _Internal::set_has_toeprintnumber(&has_bits); + _impl_.toeprintnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: goto handle_unusual; } // switch handle_unusual: @@ -1157,124 +1176,203 @@ const char* EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_InternalParse(c #undef CHK_ } -uint8_t* EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_InternalSerialize( +uint8_t* EdaDataFile_NetRecord_SubnetRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.Type type = 1; + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; if (_internal_has_type()) { target = stream->EnsureSpace(target); target = ::_pbi::WireFormatLite::WriteEnumToArray( 1, this->_internal_type(), target); } - // optional uint32 layerNumber = 2; - if (_internal_has_layernumber()) { + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 2; + for (unsigned i = 0, + n = static_cast(this->_internal_featureidrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_featureidrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); + } + + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; + if (_internal_has_filltype()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_layernumber(), target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 3, this->_internal_filltype(), target); } - // optional uint32 featureNumber = 3; - if (_internal_has_featurenumber()) { + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; + if (_internal_has_cutouttype()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_featurenumber(), target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 4, this->_internal_cutouttype(), target); + } + + // optional float fillSize = 5; + if (_internal_has_fillsize()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_fillsize(), target); + } + + // optional .Odb.Lib.Protobuf.BoardSide side = 6; + if (_internal_has_side()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 6, this->_internal_side(), target); + } + + // optional uint32 componentNumber = 7; + if (_internal_has_componentnumber()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_componentnumber(), target); + } + + // optional uint32 toeprintNumber = 8; + if (_internal_has_toeprintnumber()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(8, this->_internal_toeprintnumber(), target); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) return target; } -size_t EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) +size_t EdaDataFile_NetRecord_SubnetRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 2; + total_size += 1UL * this->_internal_featureidrecords_size(); + for (const auto& msg : this->_impl_.featureidrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.Type type = 1; + if (cached_has_bits & 0x0000007fu) { + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; if (cached_has_bits & 0x00000001u) { total_size += 1 + ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); } - // optional uint32 layerNumber = 2; + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; if (cached_has_bits & 0x00000002u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_layernumber()); + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_filltype()); } - // optional uint32 featureNumber = 3; + // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_featurenumber()); + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_cutouttype()); + } + + // optional float fillSize = 5; + if (cached_has_bits & 0x00000008u) { + total_size += 1 + 4; + } + + // optional .Odb.Lib.Protobuf.BoardSide side = 6; + if (cached_has_bits & 0x00000010u) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_side()); + } + + // optional uint32 componentNumber = 7; + if (cached_has_bits & 0x00000020u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_componentnumber()); + } + + // optional uint32 toeprintNumber = 8; + if (cached_has_bits & 0x00000040u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_toeprintnumber()); } } return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_NetRecord_SubnetRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::MergeImpl + EdaDataFile_NetRecord_SubnetRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_NetRecord_SubnetRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) +void EdaDataFile_NetRecord_SubnetRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; + _this->_impl_.featureidrecords_.MergeFrom(from._impl_.featureidrecords_); cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { + if (cached_has_bits & 0x0000007fu) { if (cached_has_bits & 0x00000001u) { _this->_impl_.type_ = from._impl_.type_; } if (cached_has_bits & 0x00000002u) { - _this->_impl_.layernumber_ = from._impl_.layernumber_; + _this->_impl_.filltype_ = from._impl_.filltype_; } if (cached_has_bits & 0x00000004u) { - _this->_impl_.featurenumber_ = from._impl_.featurenumber_; + _this->_impl_.cutouttype_ = from._impl_.cutouttype_; + } + if (cached_has_bits & 0x00000008u) { + _this->_impl_.fillsize_ = from._impl_.fillsize_; + } + if (cached_has_bits & 0x00000010u) { + _this->_impl_.side_ = from._impl_.side_; + } + if (cached_has_bits & 0x00000020u) { + _this->_impl_.componentnumber_ = from._impl_.componentnumber_; + } + if (cached_has_bits & 0x00000040u) { + _this->_impl_.toeprintnumber_ = from._impl_.toeprintnumber_; } _this->_impl_._has_bits_[0] |= cached_has_bits; } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::CopyFrom(const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) +void EdaDataFile_NetRecord_SubnetRecord::CopyFrom(const EdaDataFile_NetRecord_SubnetRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::IsInitialized() const { +bool EdaDataFile_NetRecord_SubnetRecord::IsInitialized() const { return true; } -void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::InternalSwap(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* other) { +void EdaDataFile_NetRecord_SubnetRecord::InternalSwap(EdaDataFile_NetRecord_SubnetRecord* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); + _impl_.featureidrecords_.InternalSwap(&other->_impl_.featureidrecords_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_.featurenumber_) - + sizeof(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_impl_.featurenumber_) - - PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord, _impl_.type_)>( + PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord, _impl_.toeprintnumber_) + + sizeof(EdaDataFile_NetRecord_SubnetRecord::_impl_.toeprintnumber_) + - PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord, _impl_.type_)>( reinterpret_cast(&_impl_.type_), reinterpret_cast(&other->_impl_.type_)); } -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord_SubnetRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[1]); @@ -1282,193 +1380,187 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord_SubnetRecord_FeatureIdRe // =================================================================== -class EdaDataFile_NetRecord_SubnetRecord::_Internal { +class EdaDataFile_NetRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_type(HasBits* has_bits) { + using HasBits = decltype(std::declval()._impl_._has_bits_); + static void set_has_name(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_filltype(HasBits* has_bits) { + static void set_has_attributesidstring(HasBits* has_bits) { (*has_bits)[0] |= 2u; } - static void set_has_cutouttype(HasBits* has_bits) { + static void set_has_index(HasBits* has_bits) { (*has_bits)[0] |= 4u; } - static void set_has_fillsize(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_side(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_componentnumber(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static void set_has_toeprintnumber(HasBits* has_bits) { - (*has_bits)[0] |= 64u; - } }; -EdaDataFile_NetRecord_SubnetRecord::EdaDataFile_NetRecord_SubnetRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +void EdaDataFile_NetRecord::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} +EdaDataFile_NetRecord::EdaDataFile_NetRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) } -EdaDataFile_NetRecord_SubnetRecord::EdaDataFile_NetRecord_SubnetRecord(const EdaDataFile_NetRecord_SubnetRecord& from) +EdaDataFile_NetRecord::EdaDataFile_NetRecord(const EdaDataFile_NetRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_NetRecord_SubnetRecord* const _this = this; (void)_this; + EdaDataFile_NetRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.featureidrecords_){from._impl_.featureidrecords_} - , decltype(_impl_.type_){} - , decltype(_impl_.filltype_){} - , decltype(_impl_.cutouttype_){} - , decltype(_impl_.fillsize_){} - , decltype(_impl_.side_){} - , decltype(_impl_.componentnumber_){} - , decltype(_impl_.toeprintnumber_){}}; + , decltype(_impl_.subnetrecords_){from._impl_.subnetrecords_} + , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} + , decltype(_impl_.name_){} + , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.index_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - ::memcpy(&_impl_.type_, &from._impl_.type_, - static_cast(reinterpret_cast(&_impl_.toeprintnumber_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.toeprintnumber_)); - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_name()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + _impl_.attributesidstring_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_attributesidstring()) { + _this->_impl_.attributesidstring_.Set(from._internal_attributesidstring(), + _this->GetArenaForAllocation()); + } + _this->_impl_.index_ = from._impl_.index_; + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) } -inline void EdaDataFile_NetRecord_SubnetRecord::SharedCtor( +inline void EdaDataFile_NetRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.featureidrecords_){arena} - , decltype(_impl_.type_){0} - , decltype(_impl_.filltype_){0} - , decltype(_impl_.cutouttype_){0} - , decltype(_impl_.fillsize_){0} - , decltype(_impl_.side_){0} - , decltype(_impl_.componentnumber_){0u} - , decltype(_impl_.toeprintnumber_){0u} + , decltype(_impl_.subnetrecords_){arena} + , decltype(_impl_.propertyrecords_){arena} + , decltype(_impl_.name_){} + , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.index_){0u} }; -} - -EdaDataFile_NetRecord_SubnetRecord::~EdaDataFile_NetRecord_SubnetRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) - if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +EdaDataFile_NetRecord::~EdaDataFile_NetRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; return; } SharedDtor(); } -inline void EdaDataFile_NetRecord_SubnetRecord::SharedDtor() { +inline void EdaDataFile_NetRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.featureidrecords_.~RepeatedPtrField(); + _impl_.subnetrecords_.~RepeatedPtrField(); + _impl_.propertyrecords_.~RepeatedPtrField(); + _impl_.name_.Destroy(); + _impl_.attributesidstring_.Destroy(); } -void EdaDataFile_NetRecord_SubnetRecord::SetCachedSize(int size) const { +void EdaDataFile_NetRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_NetRecord_SubnetRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) +void EdaDataFile_NetRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - _impl_.featureidrecords_.Clear(); + _impl_.subnetrecords_.Clear(); + _impl_.propertyrecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - ::memset(&_impl_.type_, 0, static_cast( - reinterpret_cast(&_impl_.toeprintnumber_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.toeprintnumber_)); + if (cached_has_bits & 0x00000003u) { + if (cached_has_bits & 0x00000001u) { + _impl_.name_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000002u) { + _impl_.attributesidstring_.ClearNonDefaultToEmpty(); + } } + _impl_.index_ = 0u; _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_NetRecord_SubnetRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_NetRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::_pbi::ReadTag(ptr, &tag); switch (tag >> 3) { - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; + // optional string name = 1; case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); - _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_Type>(val)); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.NetRecord.name")); } else goto handle_unusual; continue; - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord featureIdRecords = 2; + // optional string attributesIdString = 2; case 2: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_featureidrecords(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); + auto str = _internal_mutable_attributesidstring(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.NetRecord.attributesIdString")); } else goto handle_unusual; continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; + // optional uint32 index = 3; case 3: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + _Internal::set_has_index(&has_bits); + _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); CHK_(ptr); - _internal_set_filltype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FillType>(val)); } else goto handle_unusual; continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; + // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 32)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_cutouttype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_CutoutType>(val)); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_subnetrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr)); } else goto handle_unusual; continue; - // optional float fillSize = 5; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 5; case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 45)) { - _Internal::set_has_fillsize(&has_bits); - _impl_.fillsize_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.BoardSide side = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_side(static_cast<::Odb::Lib::Protobuf::EdaDataFile_BoardSide>(val)); - } else - goto handle_unusual; - continue; - // optional uint32 componentNumber = 7; - case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - _Internal::set_has_componentnumber(&has_bits); - _impl_.componentnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // optional uint32 toeprintNumber = 8; - case 8: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { - _Internal::set_has_toeprintnumber(&has_bits); - _impl_.toeprintnumber_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr)); } else goto handle_unusual; continue; @@ -1496,203 +1588,173 @@ const char* EdaDataFile_NetRecord_SubnetRecord::_InternalParse(const char* ptr, #undef CHK_ } -uint8_t* EdaDataFile_NetRecord_SubnetRecord::_InternalSerialize( +uint8_t* EdaDataFile_NetRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; - if (_internal_has_type()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 1, this->_internal_type(), target); - } - - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord featureIdRecords = 2; - for (unsigned i = 0, - n = static_cast(this->_internal_featureidrecords_size()); i < n; i++) { - const auto& repfield = this->_internal_featureidrecords(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); - } - - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; - if (_internal_has_filltype()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 3, this->_internal_filltype(), target); - } - - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; - if (_internal_has_cutouttype()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 4, this->_internal_cutouttype(), target); + // optional string name = 1; + if (_internal_has_name()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.EdaDataFile.NetRecord.name"); + target = stream->WriteStringMaybeAliased( + 1, this->_internal_name(), target); } - // optional float fillSize = 5; - if (_internal_has_fillsize()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_fillsize(), target); + // optional string attributesIdString = 2; + if (_internal_has_attributesidstring()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_attributesidstring().data(), static_cast(this->_internal_attributesidstring().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.EdaDataFile.NetRecord.attributesIdString"); + target = stream->WriteStringMaybeAliased( + 2, this->_internal_attributesidstring(), target); } - // optional .Odb.Lib.Protobuf.EdaDataFile.BoardSide side = 6; - if (_internal_has_side()) { + // optional uint32 index = 3; + if (_internal_has_index()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 6, this->_internal_side(), target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_index(), target); } - // optional uint32 componentNumber = 7; - if (_internal_has_componentnumber()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(7, this->_internal_componentnumber(), target); + // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; + for (unsigned i = 0, + n = static_cast(this->_internal_subnetrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_subnetrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream); } - // optional uint32 toeprintNumber = 8; - if (_internal_has_toeprintnumber()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(8, this->_internal_toeprintnumber(), target); + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 5; + for (unsigned i = 0, + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(5, repfield, repfield.GetCachedSize(), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.NetRecord) return target; } -size_t EdaDataFile_NetRecord_SubnetRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) +size_t EdaDataFile_NetRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord featureIdRecords = 2; - total_size += 1UL * this->_internal_featureidrecords_size(); - for (const auto& msg : this->_impl_.featureidrecords_) { + // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; + total_size += 1UL * this->_internal_subnetrecords_size(); + for (const auto& msg : this->_impl_.subnetrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 5; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; + if (cached_has_bits & 0x00000007u) { + // optional string name = 1; if (cached_has_bits & 0x00000001u) { total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); } - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FillType fillType = 3; + // optional string attributesIdString = 2; if (cached_has_bits & 0x00000002u) { total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_filltype()); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_attributesidstring()); } - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.CutoutType cutoutType = 4; + // optional uint32 index = 3; if (cached_has_bits & 0x00000004u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_cutouttype()); - } - - // optional float fillSize = 5; - if (cached_has_bits & 0x00000008u) { - total_size += 1 + 4; - } - - // optional .Odb.Lib.Protobuf.EdaDataFile.BoardSide side = 6; - if (cached_has_bits & 0x00000010u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_side()); - } - - // optional uint32 componentNumber = 7; - if (cached_has_bits & 0x00000020u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_componentnumber()); - } - - // optional uint32 toeprintNumber = 8; - if (cached_has_bits & 0x00000040u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_toeprintnumber()); + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index()); } } return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_NetRecord_SubnetRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_NetRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_NetRecord_SubnetRecord::MergeImpl + EdaDataFile_NetRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_NetRecord_SubnetRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_NetRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_NetRecord_SubnetRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) +void EdaDataFile_NetRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - _this->_impl_.featureidrecords_.MergeFrom(from._impl_.featureidrecords_); + _this->_impl_.subnetrecords_.MergeFrom(from._impl_.subnetrecords_); + _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { + if (cached_has_bits & 0x00000007u) { if (cached_has_bits & 0x00000001u) { - _this->_impl_.type_ = from._impl_.type_; + _this->_internal_set_name(from._internal_name()); } if (cached_has_bits & 0x00000002u) { - _this->_impl_.filltype_ = from._impl_.filltype_; + _this->_internal_set_attributesidstring(from._internal_attributesidstring()); } if (cached_has_bits & 0x00000004u) { - _this->_impl_.cutouttype_ = from._impl_.cutouttype_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.fillsize_ = from._impl_.fillsize_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.side_ = from._impl_.side_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.componentnumber_ = from._impl_.componentnumber_; - } - if (cached_has_bits & 0x00000040u) { - _this->_impl_.toeprintnumber_ = from._impl_.toeprintnumber_; + _this->_impl_.index_ = from._impl_.index_; } _this->_impl_._has_bits_[0] |= cached_has_bits; } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_NetRecord_SubnetRecord::CopyFrom(const EdaDataFile_NetRecord_SubnetRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord) +void EdaDataFile_NetRecord::CopyFrom(const EdaDataFile_NetRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_NetRecord_SubnetRecord::IsInitialized() const { +bool EdaDataFile_NetRecord::IsInitialized() const { return true; } -void EdaDataFile_NetRecord_SubnetRecord::InternalSwap(EdaDataFile_NetRecord_SubnetRecord* other) { +void EdaDataFile_NetRecord::InternalSwap(EdaDataFile_NetRecord* other) { using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.featureidrecords_.InternalSwap(&other->_impl_.featureidrecords_); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord, _impl_.toeprintnumber_) - + sizeof(EdaDataFile_NetRecord_SubnetRecord::_impl_.toeprintnumber_) - - PROTOBUF_FIELD_OFFSET(EdaDataFile_NetRecord_SubnetRecord, _impl_.type_)>( - reinterpret_cast(&_impl_.type_), - reinterpret_cast(&other->_impl_.type_)); + _impl_.subnetrecords_.InternalSwap(&other->_impl_.subnetrecords_); + _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.attributesidstring_, lhs_arena, + &other->_impl_.attributesidstring_, rhs_arena + ); + swap(_impl_.index_, other->_impl_.index_); } -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord_SubnetRecord::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[2]); @@ -1700,36 +1762,72 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord_SubnetRecord::GetMetadat // =================================================================== -class EdaDataFile_NetRecord::_Internal { +EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse() {} +EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena) + : SuperType(arena) {} +void EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::MergeFrom(const EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse& other) { + MergeFromInternal(other); +} +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, + file_level_metadata_edadatafile_2eproto[3]); +} + +// =================================================================== + +class EdaDataFile_PackageRecord_PinRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); + using HasBits = decltype(std::declval()._impl_._has_bits_); static void set_has_name(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_attributesidstring(HasBits* has_bits) { + static void set_has_type(HasBits* has_bits) { (*has_bits)[0] |= 2u; } - static void set_has_index(HasBits* has_bits) { + static void set_has_xcenter(HasBits* has_bits) { (*has_bits)[0] |= 4u; } + static void set_has_ycenter(HasBits* has_bits) { + (*has_bits)[0] |= 8u; + } + static void set_has_finishedholesize(HasBits* has_bits) { + (*has_bits)[0] |= 16u; + } + static void set_has_electricaltype(HasBits* has_bits) { + (*has_bits)[0] |= 32u; + } + static void set_has_mounttype(HasBits* has_bits) { + (*has_bits)[0] |= 64u; + } + static void set_has_id(HasBits* has_bits) { + (*has_bits)[0] |= 128u; + } + static void set_has_index(HasBits* has_bits) { + (*has_bits)[0] |= 256u; + } }; -EdaDataFile_NetRecord::EdaDataFile_NetRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +EdaDataFile_PackageRecord_PinRecord::EdaDataFile_PackageRecord_PinRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) } -EdaDataFile_NetRecord::EdaDataFile_NetRecord(const EdaDataFile_NetRecord& from) +EdaDataFile_PackageRecord_PinRecord::EdaDataFile_PackageRecord_PinRecord(const EdaDataFile_PackageRecord_PinRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_NetRecord* const _this = this; (void)_this; + EdaDataFile_PackageRecord_PinRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.subnetrecords_){from._impl_.subnetrecords_} - , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} , decltype(_impl_.name_){} - , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.type_){} + , decltype(_impl_.xcenter_){} + , decltype(_impl_.ycenter_){} + , decltype(_impl_.finishedholesize_){} + , decltype(_impl_.electricaltype_){} + , decltype(_impl_.mounttype_){} + , decltype(_impl_.id_){} , decltype(_impl_.index_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); @@ -1741,43 +1839,37 @@ EdaDataFile_NetRecord::EdaDataFile_NetRecord(const EdaDataFile_NetRecord& from) _this->_impl_.name_.Set(from._internal_name(), _this->GetArenaForAllocation()); } - _impl_.attributesidstring_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_attributesidstring()) { - _this->_impl_.attributesidstring_.Set(from._internal_attributesidstring(), - _this->GetArenaForAllocation()); - } - _this->_impl_.index_ = from._impl_.index_; - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) + ::memcpy(&_impl_.type_, &from._impl_.type_, + static_cast(reinterpret_cast(&_impl_.index_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.index_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) } -inline void EdaDataFile_NetRecord::SharedCtor( +inline void EdaDataFile_PackageRecord_PinRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.subnetrecords_){arena} - , decltype(_impl_.propertyrecords_){arena} , decltype(_impl_.name_){} - , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.type_){0} + , decltype(_impl_.xcenter_){0} + , decltype(_impl_.ycenter_){0} + , decltype(_impl_.finishedholesize_){0} + , decltype(_impl_.electricaltype_){0} + , decltype(_impl_.mounttype_){0} + , decltype(_impl_.id_){0u} , decltype(_impl_.index_){0u} }; _impl_.name_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.name_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } -EdaDataFile_NetRecord::~EdaDataFile_NetRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.NetRecord) +EdaDataFile_PackageRecord_PinRecord::~EdaDataFile_PackageRecord_PinRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; return; @@ -1785,41 +1877,36 @@ EdaDataFile_NetRecord::~EdaDataFile_NetRecord() { SharedDtor(); } -inline void EdaDataFile_NetRecord::SharedDtor() { +inline void EdaDataFile_PackageRecord_PinRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.subnetrecords_.~RepeatedPtrField(); - _impl_.propertyrecords_.~RepeatedPtrField(); _impl_.name_.Destroy(); - _impl_.attributesidstring_.Destroy(); } -void EdaDataFile_NetRecord::SetCachedSize(int size) const { +void EdaDataFile_PackageRecord_PinRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_NetRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) +void EdaDataFile_PackageRecord_PinRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - _impl_.subnetrecords_.Clear(); - _impl_.propertyrecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000002u) { - _impl_.attributesidstring_.ClearNonDefaultToEmpty(); - } + if (cached_has_bits & 0x00000001u) { + _impl_.name_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x000000feu) { + ::memset(&_impl_.type_, 0, static_cast( + reinterpret_cast(&_impl_.id_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.id_)); } _impl_.index_ = 0u; _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_NetRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_PackageRecord_PinRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { @@ -1832,52 +1919,79 @@ const char* EdaDataFile_NetRecord::_InternalParse(const char* ptr, ::_pbi::Parse auto str = _internal_mutable_name(); ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.NetRecord.name")); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.name")); } else goto handle_unusual; continue; - // optional string attributesIdString = 2; + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { - auto str = _internal_mutable_attributesidstring(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.NetRecord.attributesIdString")); + _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_Type>(val)); } else goto handle_unusual; continue; - // optional uint32 index = 3; + // optional float xCenter = 3; case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { - _Internal::set_has_index(&has_bits); - _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 29)) { + _Internal::set_has_xcenter(&has_bits); + _impl_.xcenter_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); } else goto handle_unusual; continue; - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; + // optional float yCenter = 4; case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_subnetrecords(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr)); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 37)) { + _Internal::set_has_ycenter(&has_bits); + _impl_.ycenter_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); } else goto handle_unusual; continue; - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 5; + // optional float finishedHoleSize = 5; case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr)); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 45)) { + _Internal::set_has_finishedholesize(&has_bits); + _impl_.finishedholesize_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); + } else + goto handle_unusual; + continue; + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_electricaltype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_ElectricalType>(val)); + } else + goto handle_unusual; + continue; + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_mounttype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_MountType>(val)); + } else + goto handle_unusual; + continue; + // optional uint32 id = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { + _Internal::set_has_id(&has_bits); + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // optional uint32 index = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 72)) { + _Internal::set_has_index(&has_bits); + _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); } else goto handle_unusual; continue; @@ -1905,9 +2019,9 @@ const char* EdaDataFile_NetRecord::_InternalParse(const char* ptr, ::_pbi::Parse #undef CHK_ } -uint8_t* EdaDataFile_NetRecord::_InternalSerialize( +uint8_t* EdaDataFile_PackageRecord_PinRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -1916,75 +2030,80 @@ uint8_t* EdaDataFile_NetRecord::_InternalSerialize( ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( this->_internal_name().data(), static_cast(this->_internal_name().length()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.NetRecord.name"); + "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.name"); target = stream->WriteStringMaybeAliased( 1, this->_internal_name(), target); } - // optional string attributesIdString = 2; - if (_internal_has_attributesidstring()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_attributesidstring().data(), static_cast(this->_internal_attributesidstring().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.NetRecord.attributesIdString"); - target = stream->WriteStringMaybeAliased( - 2, this->_internal_attributesidstring(), target); + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; + if (_internal_has_type()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 2, this->_internal_type(), target); } - // optional uint32 index = 3; - if (_internal_has_index()) { + // optional float xCenter = 3; + if (_internal_has_xcenter()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(3, this->_internal_index(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_xcenter(), target); } - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; - for (unsigned i = 0, - n = static_cast(this->_internal_subnetrecords_size()); i < n; i++) { - const auto& repfield = this->_internal_subnetrecords(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream); + // optional float yCenter = 4; + if (_internal_has_ycenter()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_ycenter(), target); } - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 5; - for (unsigned i = 0, - n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { - const auto& repfield = this->_internal_propertyrecords(i); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(5, repfield, repfield.GetCachedSize(), target, stream); + // optional float finishedHoleSize = 5; + if (_internal_has_finishedholesize()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_finishedholesize(), target); + } + + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; + if (_internal_has_electricaltype()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 6, this->_internal_electricaltype(), target); + } + + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; + if (_internal_has_mounttype()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 7, this->_internal_mounttype(), target); + } + + // optional uint32 id = 8; + if (_internal_has_id()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(8, this->_internal_id(), target); + } + + // optional uint32 index = 9; + if (_internal_has_index()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(9, this->_internal_index(), target); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.NetRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) return target; } -size_t EdaDataFile_NetRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) +size_t EdaDataFile_PackageRecord_PinRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) size_t total_size = 0; - uint32_t cached_has_bits = 0; - // Prevent compiler warnings about cached_has_bits being unused - (void) cached_has_bits; - - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord subnetRecords = 4; - total_size += 1UL * this->_internal_subnetrecords_size(); - for (const auto& msg : this->_impl_.subnetrecords_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 5; - total_size += 1UL * this->_internal_propertyrecords_size(); - for (const auto& msg : this->_impl_.propertyrecords_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { + if (cached_has_bits & 0x000000ffu) { // optional string name = 1; if (cached_has_bits & 0x00000001u) { total_size += 1 + @@ -1992,100 +2111,132 @@ size_t EdaDataFile_NetRecord::ByteSizeLong() const { this->_internal_name()); } - // optional string attributesIdString = 2; + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; if (cached_has_bits & 0x00000002u) { total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_attributesidstring()); + ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); } - // optional uint32 index = 3; + // optional float xCenter = 3; if (cached_has_bits & 0x00000004u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index()); + total_size += 1 + 4; + } + + // optional float yCenter = 4; + if (cached_has_bits & 0x00000008u) { + total_size += 1 + 4; + } + + // optional float finishedHoleSize = 5; + if (cached_has_bits & 0x00000010u) { + total_size += 1 + 4; + } + + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; + if (cached_has_bits & 0x00000020u) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_electricaltype()); + } + + // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; + if (cached_has_bits & 0x00000040u) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_mounttype()); + } + + // optional uint32 id = 8; + if (cached_has_bits & 0x00000080u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); } } + // optional uint32 index = 9; + if (cached_has_bits & 0x00000100u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index()); + } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_NetRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_PackageRecord_PinRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_NetRecord::MergeImpl + EdaDataFile_PackageRecord_PinRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_NetRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_PackageRecord_PinRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_NetRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) +void EdaDataFile_PackageRecord_PinRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - _this->_impl_.subnetrecords_.MergeFrom(from._impl_.subnetrecords_); - _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x00000007u) { + if (cached_has_bits & 0x000000ffu) { if (cached_has_bits & 0x00000001u) { _this->_internal_set_name(from._internal_name()); } if (cached_has_bits & 0x00000002u) { - _this->_internal_set_attributesidstring(from._internal_attributesidstring()); + _this->_impl_.type_ = from._impl_.type_; } if (cached_has_bits & 0x00000004u) { - _this->_impl_.index_ = from._impl_.index_; + _this->_impl_.xcenter_ = from._impl_.xcenter_; + } + if (cached_has_bits & 0x00000008u) { + _this->_impl_.ycenter_ = from._impl_.ycenter_; + } + if (cached_has_bits & 0x00000010u) { + _this->_impl_.finishedholesize_ = from._impl_.finishedholesize_; + } + if (cached_has_bits & 0x00000020u) { + _this->_impl_.electricaltype_ = from._impl_.electricaltype_; + } + if (cached_has_bits & 0x00000040u) { + _this->_impl_.mounttype_ = from._impl_.mounttype_; + } + if (cached_has_bits & 0x00000080u) { + _this->_impl_.id_ = from._impl_.id_; } _this->_impl_._has_bits_[0] |= cached_has_bits; } + if (cached_has_bits & 0x00000100u) { + _this->_internal_set_index(from._internal_index()); + } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_NetRecord::CopyFrom(const EdaDataFile_NetRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.NetRecord) +void EdaDataFile_PackageRecord_PinRecord::CopyFrom(const EdaDataFile_PackageRecord_PinRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_NetRecord::IsInitialized() const { +bool EdaDataFile_PackageRecord_PinRecord::IsInitialized() const { return true; } -void EdaDataFile_NetRecord::InternalSwap(EdaDataFile_NetRecord* other) { +void EdaDataFile_PackageRecord_PinRecord::InternalSwap(EdaDataFile_PackageRecord_PinRecord* other) { using std::swap; auto* lhs_arena = GetArenaForAllocation(); auto* rhs_arena = other->GetArenaForAllocation(); _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.subnetrecords_.InternalSwap(&other->_impl_.subnetrecords_); - _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( &_impl_.name_, lhs_arena, &other->_impl_.name_, rhs_arena ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.attributesidstring_, lhs_arena, - &other->_impl_.attributesidstring_, rhs_arena - ); - swap(_impl_.index_, other->_impl_.index_); -} - -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_NetRecord::GetMetadata() const { - return ::_pbi::AssignDescriptors( - &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, - file_level_metadata_edadatafile_2eproto[3]); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord_PinRecord, _impl_.index_) + + sizeof(EdaDataFile_PackageRecord_PinRecord::_impl_.index_) + - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord_PinRecord, _impl_.type_)>( + reinterpret_cast(&_impl_.type_), + reinterpret_cast(&other->_impl_.type_)); } -// =================================================================== - -EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse() {} -EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena) - : SuperType(arena) {} -void EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::MergeFrom(const EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse& other) { - MergeFromInternal(other); -} -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[4]); @@ -2093,61 +2244,63 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecordsByNameEntr // =================================================================== -class EdaDataFile_PackageRecord_PinRecord::_Internal { +class EdaDataFile_PackageRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); + using HasBits = decltype(std::declval()._impl_._has_bits_); static void set_has_name(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_type(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } - static void set_has_xcenter(HasBits* has_bits) { + static void set_has_pitch(HasBits* has_bits) { (*has_bits)[0] |= 4u; } - static void set_has_ycenter(HasBits* has_bits) { + static void set_has_xmin(HasBits* has_bits) { (*has_bits)[0] |= 8u; } - static void set_has_finishedholesize(HasBits* has_bits) { + static void set_has_ymin(HasBits* has_bits) { (*has_bits)[0] |= 16u; } - static void set_has_electricaltype(HasBits* has_bits) { + static void set_has_xmax(HasBits* has_bits) { (*has_bits)[0] |= 32u; } - static void set_has_mounttype(HasBits* has_bits) { + static void set_has_ymax(HasBits* has_bits) { (*has_bits)[0] |= 64u; } - static void set_has_id(HasBits* has_bits) { - (*has_bits)[0] |= 128u; - } - static void set_has_index(HasBits* has_bits) { - (*has_bits)[0] |= 256u; + static void set_has_attributesidstring(HasBits* has_bits) { + (*has_bits)[0] |= 2u; } }; -EdaDataFile_PackageRecord_PinRecord::EdaDataFile_PackageRecord_PinRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +void EdaDataFile_PackageRecord::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} +EdaDataFile_PackageRecord::EdaDataFile_PackageRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) + if (arena != nullptr && !is_message_owned) { + arena->OwnCustomDestructor(this, &EdaDataFile_PackageRecord::ArenaDtor); + } + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) } -EdaDataFile_PackageRecord_PinRecord::EdaDataFile_PackageRecord_PinRecord(const EdaDataFile_PackageRecord_PinRecord& from) +EdaDataFile_PackageRecord::EdaDataFile_PackageRecord(const EdaDataFile_PackageRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_PackageRecord_PinRecord* const _this = this; (void)_this; + EdaDataFile_PackageRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.pinrecords_){from._impl_.pinrecords_} + , /*decltype(_impl_.pinrecordsbyname_)*/{} + , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} , decltype(_impl_.name_){} - , decltype(_impl_.type_){} - , decltype(_impl_.xcenter_){} - , decltype(_impl_.ycenter_){} - , decltype(_impl_.finishedholesize_){} - , decltype(_impl_.electricaltype_){} - , decltype(_impl_.mounttype_){} - , decltype(_impl_.id_){} - , decltype(_impl_.index_){}}; + , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.pitch_){} + , decltype(_impl_.xmin_){} + , decltype(_impl_.ymin_){} + , decltype(_impl_.xmax_){} + , decltype(_impl_.ymax_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _this->_impl_.pinrecordsbyname_.MergeFrom(from._impl_.pinrecordsbyname_); _impl_.name_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.name_.Set("", GetArenaForAllocation()); @@ -2156,74 +2309,104 @@ EdaDataFile_PackageRecord_PinRecord::EdaDataFile_PackageRecord_PinRecord(const E _this->_impl_.name_.Set(from._internal_name(), _this->GetArenaForAllocation()); } - ::memcpy(&_impl_.type_, &from._impl_.type_, - static_cast(reinterpret_cast(&_impl_.index_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.index_)); - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) + _impl_.attributesidstring_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_attributesidstring()) { + _this->_impl_.attributesidstring_.Set(from._internal_attributesidstring(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.pitch_, &from._impl_.pitch_, + static_cast(reinterpret_cast(&_impl_.ymax_) - + reinterpret_cast(&_impl_.pitch_)) + sizeof(_impl_.ymax_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) } -inline void EdaDataFile_PackageRecord_PinRecord::SharedCtor( +inline void EdaDataFile_PackageRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.pinrecords_){arena} + , /*decltype(_impl_.pinrecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} + , decltype(_impl_.propertyrecords_){arena} , decltype(_impl_.name_){} - , decltype(_impl_.type_){0} - , decltype(_impl_.xcenter_){0} - , decltype(_impl_.ycenter_){0} - , decltype(_impl_.finishedholesize_){0} - , decltype(_impl_.electricaltype_){0} - , decltype(_impl_.mounttype_){0} - , decltype(_impl_.id_){0u} - , decltype(_impl_.index_){0u} + , decltype(_impl_.attributesidstring_){} + , decltype(_impl_.pitch_){0} + , decltype(_impl_.xmin_){0} + , decltype(_impl_.ymin_){0} + , decltype(_impl_.xmax_){0} + , decltype(_impl_.ymax_){0} }; _impl_.name_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING _impl_.name_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } -EdaDataFile_PackageRecord_PinRecord::~EdaDataFile_PackageRecord_PinRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) +EdaDataFile_PackageRecord::~EdaDataFile_PackageRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; + ArenaDtor(this); return; } SharedDtor(); } -inline void EdaDataFile_PackageRecord_PinRecord::SharedDtor() { +inline void EdaDataFile_PackageRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.pinrecords_.~RepeatedPtrField(); + _impl_.pinrecordsbyname_.Destruct(); + _impl_.pinrecordsbyname_.~MapField(); + _impl_.propertyrecords_.~RepeatedPtrField(); _impl_.name_.Destroy(); + _impl_.attributesidstring_.Destroy(); } -void EdaDataFile_PackageRecord_PinRecord::SetCachedSize(int size) const { +void EdaDataFile_PackageRecord::ArenaDtor(void* object) { + EdaDataFile_PackageRecord* _this = reinterpret_cast< EdaDataFile_PackageRecord* >(object); + _this->_impl_.pinrecordsbyname_.Destruct(); +} +void EdaDataFile_PackageRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_PackageRecord_PinRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) +void EdaDataFile_PackageRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + _impl_.pinrecords_.Clear(); + _impl_.pinrecordsbyname_.Clear(); + _impl_.propertyrecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x000000feu) { - ::memset(&_impl_.type_, 0, static_cast( - reinterpret_cast(&_impl_.id_) - - reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.id_)); + if (cached_has_bits & 0x00000003u) { + if (cached_has_bits & 0x00000001u) { + _impl_.name_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000002u) { + _impl_.attributesidstring_.ClearNonDefaultToEmpty(); + } + } + if (cached_has_bits & 0x0000007cu) { + ::memset(&_impl_.pitch_, 0, static_cast( + reinterpret_cast(&_impl_.ymax_) - + reinterpret_cast(&_impl_.pitch_)) + sizeof(_impl_.ymax_)); } - _impl_.index_ = 0u; _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_PackageRecord_PinRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_PackageRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { @@ -2236,79 +2419,101 @@ const char* EdaDataFile_PackageRecord_PinRecord::_InternalParse(const char* ptr, auto str = _internal_mutable_name(); ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.name")); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.name")); } else goto handle_unusual; continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; + // optional float pitch = 2; case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_type(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_Type>(val)); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 21)) { + _Internal::set_has_pitch(&has_bits); + _impl_.pitch_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); } else goto handle_unusual; continue; - // optional float xCenter = 3; + // optional float xMin = 3; case 3: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 29)) { - _Internal::set_has_xcenter(&has_bits); - _impl_.xcenter_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + _Internal::set_has_xmin(&has_bits); + _impl_.xmin_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); ptr += sizeof(float); } else goto handle_unusual; continue; - // optional float yCenter = 4; + // optional float yMin = 4; case 4: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 37)) { - _Internal::set_has_ycenter(&has_bits); - _impl_.ycenter_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + _Internal::set_has_ymin(&has_bits); + _impl_.ymin_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); ptr += sizeof(float); } else goto handle_unusual; continue; - // optional float finishedHoleSize = 5; + // optional float xMax = 5; case 5: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 45)) { - _Internal::set_has_finishedholesize(&has_bits); - _impl_.finishedholesize_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + _Internal::set_has_xmax(&has_bits); + _impl_.xmax_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); ptr += sizeof(float); } else goto handle_unusual; continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; + // optional float yMax = 6; case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_electricaltype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_ElectricalType>(val)); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 53)) { + _Internal::set_has_ymax(&has_bits); + _impl_.ymax_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); + ptr += sizeof(float); } else goto handle_unusual; continue; - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; + // optional string attributesIdString = 7; case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 56)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { + auto str = _internal_mutable_attributesidstring(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); - _internal_set_mounttype(static_cast<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_MountType>(val)); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.attributesIdString")); } else goto handle_unusual; continue; - // optional uint32 id = 8; + // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; case 8: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { - _Internal::set_has_id(&has_bits); - _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_pinrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr)); } else goto handle_unusual; continue; - // optional uint32 index = 9; + // map pinRecordsByName = 9; case 9: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 72)) { - _Internal::set_has_index(&has_bits); - _impl_.index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); - CHK_(ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(&_impl_.pinrecordsbyname_, ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 82)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr)); } else goto handle_unusual; continue; @@ -2336,9 +2541,9 @@ const char* EdaDataFile_PackageRecord_PinRecord::_InternalParse(const char* ptr, #undef CHK_ } -uint8_t* EdaDataFile_PackageRecord_PinRecord::_InternalSerialize( +uint8_t* EdaDataFile_PackageRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -2347,80 +2552,134 @@ uint8_t* EdaDataFile_PackageRecord_PinRecord::_InternalSerialize( ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( this->_internal_name().data(), static_cast(this->_internal_name().length()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.name"); + "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.name"); target = stream->WriteStringMaybeAliased( 1, this->_internal_name(), target); } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; - if (_internal_has_type()) { + // optional float pitch = 2; + if (_internal_has_pitch()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 2, this->_internal_type(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_pitch(), target); } - // optional float xCenter = 3; - if (_internal_has_xcenter()) { + // optional float xMin = 3; + if (_internal_has_xmin()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_xcenter(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_xmin(), target); } - // optional float yCenter = 4; - if (_internal_has_ycenter()) { + // optional float yMin = 4; + if (_internal_has_ymin()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_ycenter(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_ymin(), target); } - // optional float finishedHoleSize = 5; - if (_internal_has_finishedholesize()) { + // optional float xMax = 5; + if (_internal_has_xmax()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_finishedholesize(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_xmax(), target); } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; - if (_internal_has_electricaltype()) { + // optional float yMax = 6; + if (_internal_has_ymax()) { target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 6, this->_internal_electricaltype(), target); + target = ::_pbi::WireFormatLite::WriteFloatToArray(6, this->_internal_ymax(), target); } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; - if (_internal_has_mounttype()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteEnumToArray( - 7, this->_internal_mounttype(), target); + // optional string attributesIdString = 7; + if (_internal_has_attributesidstring()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_attributesidstring().data(), static_cast(this->_internal_attributesidstring().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.attributesIdString"); + target = stream->WriteStringMaybeAliased( + 7, this->_internal_attributesidstring(), target); } - // optional uint32 id = 8; - if (_internal_has_id()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(8, this->_internal_id(), target); + // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; + for (unsigned i = 0, + n = static_cast(this->_internal_pinrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_pinrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(8, repfield, repfield.GetCachedSize(), target, stream); } - // optional uint32 index = 9; - if (_internal_has_index()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteUInt32ToArray(9, this->_internal_index(), target); + // map pinRecordsByName = 9; + if (!this->_internal_pinrecordsbyname().empty()) { + using MapType = ::_pb::Map; + using WireHelper = EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::Funcs; + const auto& map_field = this->_internal_pinrecordsbyname(); + auto check_utf8 = [](const MapType::value_type& entry) { + (void)entry; + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + entry.first.data(), static_cast(entry.first.length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecordsByNameEntry.key"); + }; + + if (stream->IsSerializationDeterministic() && map_field.size() > 1) { + for (const auto& entry : ::_pbi::MapSorterPtr(map_field)) { + target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } else { + for (const auto& entry : map_field) { + target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream); + check_utf8(entry); + } + } + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 10; + for (unsigned i = 0, + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(10, repfield, repfield.GetCachedSize(), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) return target; } -size_t EdaDataFile_PackageRecord_PinRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) +size_t EdaDataFile_PackageRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; + total_size += 1UL * this->_internal_pinrecords_size(); + for (const auto& msg : this->_impl_.pinrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // map pinRecordsByName = 9; + total_size += 1 * + ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_pinrecordsbyname_size()); + for (::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord >::const_iterator + it = this->_internal_pinrecordsbyname().begin(); + it != this->_internal_pinrecordsbyname().end(); ++it) { + total_size += EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second); + } + + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 10; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x000000ffu) { + if (cached_has_bits & 0x0000007fu) { // optional string name = 1; if (cached_has_bits & 0x00000001u) { total_size += 1 + @@ -2428,132 +2687,125 @@ size_t EdaDataFile_PackageRecord_PinRecord::ByteSizeLong() const { this->_internal_name()); } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.Type type = 2; + // optional string attributesIdString = 7; if (cached_has_bits & 0x00000002u) { total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_attributesidstring()); } - // optional float xCenter = 3; + // optional float pitch = 2; if (cached_has_bits & 0x00000004u) { total_size += 1 + 4; } - // optional float yCenter = 4; + // optional float xMin = 3; if (cached_has_bits & 0x00000008u) { total_size += 1 + 4; } - // optional float finishedHoleSize = 5; + // optional float yMin = 4; if (cached_has_bits & 0x00000010u) { total_size += 1 + 4; } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.ElectricalType electricalType = 6; + // optional float xMax = 5; if (cached_has_bits & 0x00000020u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_electricaltype()); + total_size += 1 + 4; } - // optional .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord.MountType mountType = 7; + // optional float yMax = 6; if (cached_has_bits & 0x00000040u) { - total_size += 1 + - ::_pbi::WireFormatLite::EnumSize(this->_internal_mounttype()); - } - - // optional uint32 id = 8; - if (cached_has_bits & 0x00000080u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); + total_size += 1 + 4; } - } - // optional uint32 index = 9; - if (cached_has_bits & 0x00000100u) { - total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_index()); - } - + } return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_PackageRecord_PinRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_PackageRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_PackageRecord_PinRecord::MergeImpl + EdaDataFile_PackageRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_PackageRecord_PinRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_PackageRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_PackageRecord_PinRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) +void EdaDataFile_PackageRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; + _this->_impl_.pinrecords_.MergeFrom(from._impl_.pinrecords_); + _this->_impl_.pinrecordsbyname_.MergeFrom(from._impl_.pinrecordsbyname_); + _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x000000ffu) { + if (cached_has_bits & 0x0000007fu) { if (cached_has_bits & 0x00000001u) { _this->_internal_set_name(from._internal_name()); } if (cached_has_bits & 0x00000002u) { - _this->_impl_.type_ = from._impl_.type_; + _this->_internal_set_attributesidstring(from._internal_attributesidstring()); } if (cached_has_bits & 0x00000004u) { - _this->_impl_.xcenter_ = from._impl_.xcenter_; + _this->_impl_.pitch_ = from._impl_.pitch_; } if (cached_has_bits & 0x00000008u) { - _this->_impl_.ycenter_ = from._impl_.ycenter_; + _this->_impl_.xmin_ = from._impl_.xmin_; } if (cached_has_bits & 0x00000010u) { - _this->_impl_.finishedholesize_ = from._impl_.finishedholesize_; + _this->_impl_.ymin_ = from._impl_.ymin_; } if (cached_has_bits & 0x00000020u) { - _this->_impl_.electricaltype_ = from._impl_.electricaltype_; + _this->_impl_.xmax_ = from._impl_.xmax_; } if (cached_has_bits & 0x00000040u) { - _this->_impl_.mounttype_ = from._impl_.mounttype_; - } - if (cached_has_bits & 0x00000080u) { - _this->_impl_.id_ = from._impl_.id_; + _this->_impl_.ymax_ = from._impl_.ymax_; } _this->_impl_._has_bits_[0] |= cached_has_bits; } - if (cached_has_bits & 0x00000100u) { - _this->_internal_set_index(from._internal_index()); - } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_PackageRecord_PinRecord::CopyFrom(const EdaDataFile_PackageRecord_PinRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord) +void EdaDataFile_PackageRecord::CopyFrom(const EdaDataFile_PackageRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_PackageRecord_PinRecord::IsInitialized() const { +bool EdaDataFile_PackageRecord::IsInitialized() const { return true; } -void EdaDataFile_PackageRecord_PinRecord::InternalSwap(EdaDataFile_PackageRecord_PinRecord* other) { +void EdaDataFile_PackageRecord::InternalSwap(EdaDataFile_PackageRecord* other) { using std::swap; auto* lhs_arena = GetArenaForAllocation(); auto* rhs_arena = other->GetArenaForAllocation(); _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); + _impl_.pinrecords_.InternalSwap(&other->_impl_.pinrecords_); + _impl_.pinrecordsbyname_.InternalSwap(&other->_impl_.pinrecordsbyname_); + _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( &_impl_.name_, lhs_arena, &other->_impl_.name_, rhs_arena ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.attributesidstring_, lhs_arena, + &other->_impl_.attributesidstring_, rhs_arena + ); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord_PinRecord, _impl_.index_) - + sizeof(EdaDataFile_PackageRecord_PinRecord::_impl_.index_) - - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord_PinRecord, _impl_.type_)>( - reinterpret_cast(&_impl_.type_), - reinterpret_cast(&other->_impl_.type_)); + PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord, _impl_.ymax_) + + sizeof(EdaDataFile_PackageRecord::_impl_.ymax_) + - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord, _impl_.pitch_)>( + reinterpret_cast(&_impl_.pitch_), + reinterpret_cast(&other->_impl_.pitch_)); } -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecord::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[5]); @@ -2561,273 +2813,138 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord_PinRecord::GetMetada // =================================================================== -class EdaDataFile_PackageRecord::_Internal { +class EdaDataFile_FeatureGroupRecord::_Internal { public: - using HasBits = decltype(std::declval()._impl_._has_bits_); - static void set_has_name(HasBits* has_bits) { + using HasBits = decltype(std::declval()._impl_._has_bits_); + static void set_has_type(HasBits* has_bits) { (*has_bits)[0] |= 1u; } - static void set_has_pitch(HasBits* has_bits) { - (*has_bits)[0] |= 4u; - } - static void set_has_xmin(HasBits* has_bits) { - (*has_bits)[0] |= 8u; - } - static void set_has_ymin(HasBits* has_bits) { - (*has_bits)[0] |= 16u; - } - static void set_has_xmax(HasBits* has_bits) { - (*has_bits)[0] |= 32u; - } - static void set_has_ymax(HasBits* has_bits) { - (*has_bits)[0] |= 64u; - } - static void set_has_attributesidstring(HasBits* has_bits) { - (*has_bits)[0] |= 2u; - } }; -EdaDataFile_PackageRecord::EdaDataFile_PackageRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, +void EdaDataFile_FeatureGroupRecord::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} +EdaDataFile_FeatureGroupRecord::EdaDataFile_FeatureGroupRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(arena, is_message_owned); - if (arena != nullptr && !is_message_owned) { - arena->OwnCustomDestructor(this, &EdaDataFile_PackageRecord::ArenaDtor); - } - // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) } -EdaDataFile_PackageRecord::EdaDataFile_PackageRecord(const EdaDataFile_PackageRecord& from) +EdaDataFile_FeatureGroupRecord::EdaDataFile_FeatureGroupRecord(const EdaDataFile_FeatureGroupRecord& from) : ::PROTOBUF_NAMESPACE_ID::Message() { - EdaDataFile_PackageRecord* const _this = this; (void)_this; + EdaDataFile_FeatureGroupRecord* const _this = this; (void)_this; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){from._impl_._has_bits_} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.pinrecords_){from._impl_.pinrecords_} - , /*decltype(_impl_.pinrecordsbyname_)*/{} , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} - , decltype(_impl_.name_){} - , decltype(_impl_.attributesidstring_){} - , decltype(_impl_.pitch_){} - , decltype(_impl_.xmin_){} - , decltype(_impl_.ymin_){} - , decltype(_impl_.xmax_){} - , decltype(_impl_.ymax_){}}; + , decltype(_impl_.featureidrecords_){from._impl_.featureidrecords_} + , decltype(_impl_.type_){}}; _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - _this->_impl_.pinrecordsbyname_.MergeFrom(from._impl_.pinrecordsbyname_); - _impl_.name_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_name()) { - _this->_impl_.name_.Set(from._internal_name(), - _this->GetArenaForAllocation()); - } - _impl_.attributesidstring_.InitDefault(); + _impl_.type_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + _impl_.type_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (from._internal_has_attributesidstring()) { - _this->_impl_.attributesidstring_.Set(from._internal_attributesidstring(), + if (from._internal_has_type()) { + _this->_impl_.type_.Set(from._internal_type(), _this->GetArenaForAllocation()); } - ::memcpy(&_impl_.pitch_, &from._impl_.pitch_, - static_cast(reinterpret_cast(&_impl_.ymax_) - - reinterpret_cast(&_impl_.pitch_)) + sizeof(_impl_.ymax_)); - // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) } -inline void EdaDataFile_PackageRecord::SharedCtor( +inline void EdaDataFile_FeatureGroupRecord::SharedCtor( ::_pb::Arena* arena, bool is_message_owned) { (void)arena; (void)is_message_owned; new (&_impl_) Impl_{ decltype(_impl_._has_bits_){} , /*decltype(_impl_._cached_size_)*/{} - , decltype(_impl_.pinrecords_){arena} - , /*decltype(_impl_.pinrecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} , decltype(_impl_.propertyrecords_){arena} - , decltype(_impl_.name_){} - , decltype(_impl_.attributesidstring_){} - , decltype(_impl_.pitch_){0} - , decltype(_impl_.xmin_){0} - , decltype(_impl_.ymin_){0} - , decltype(_impl_.xmax_){0} - , decltype(_impl_.ymax_){0} + , decltype(_impl_.featureidrecords_){arena} + , decltype(_impl_.type_){} }; - _impl_.name_.InitDefault(); + _impl_.type_.InitDefault(); #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.name_.Set("", GetArenaForAllocation()); - #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.InitDefault(); - #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - _impl_.attributesidstring_.Set("", GetArenaForAllocation()); + _impl_.type_.Set("", GetArenaForAllocation()); #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING } -EdaDataFile_PackageRecord::~EdaDataFile_PackageRecord() { - // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) +EdaDataFile_FeatureGroupRecord::~EdaDataFile_FeatureGroupRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { (void)arena; - ArenaDtor(this); return; } SharedDtor(); } -inline void EdaDataFile_PackageRecord::SharedDtor() { +inline void EdaDataFile_FeatureGroupRecord::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - _impl_.pinrecords_.~RepeatedPtrField(); - _impl_.pinrecordsbyname_.Destruct(); - _impl_.pinrecordsbyname_.~MapField(); _impl_.propertyrecords_.~RepeatedPtrField(); - _impl_.name_.Destroy(); - _impl_.attributesidstring_.Destroy(); + _impl_.featureidrecords_.~RepeatedPtrField(); + _impl_.type_.Destroy(); } -void EdaDataFile_PackageRecord::ArenaDtor(void* object) { - EdaDataFile_PackageRecord* _this = reinterpret_cast< EdaDataFile_PackageRecord* >(object); - _this->_impl_.pinrecordsbyname_.Destruct(); -} -void EdaDataFile_PackageRecord::SetCachedSize(int size) const { +void EdaDataFile_FeatureGroupRecord::SetCachedSize(int size) const { _impl_._cached_size_.Set(size); } -void EdaDataFile_PackageRecord::Clear() { -// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) +void EdaDataFile_FeatureGroupRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - _impl_.pinrecords_.Clear(); - _impl_.pinrecordsbyname_.Clear(); _impl_.propertyrecords_.Clear(); + _impl_.featureidrecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x00000003u) { - if (cached_has_bits & 0x00000001u) { - _impl_.name_.ClearNonDefaultToEmpty(); - } - if (cached_has_bits & 0x00000002u) { - _impl_.attributesidstring_.ClearNonDefaultToEmpty(); - } - } - if (cached_has_bits & 0x0000007cu) { - ::memset(&_impl_.pitch_, 0, static_cast( - reinterpret_cast(&_impl_.ymax_) - - reinterpret_cast(&_impl_.pitch_)) + sizeof(_impl_.ymax_)); + if (cached_has_bits & 0x00000001u) { + _impl_.type_.ClearNonDefaultToEmpty(); } _impl_._has_bits_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* EdaDataFile_PackageRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +const char* EdaDataFile_FeatureGroupRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure _Internal::HasBits has_bits{}; while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::_pbi::ReadTag(ptr, &tag); switch (tag >> 3) { - // optional string name = 1; + // optional string type = 1; case 1: if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { - auto str = _internal_mutable_name(); + auto str = _internal_mutable_type(); ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.name")); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type")); } else goto handle_unusual; continue; - // optional float pitch = 2; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 2; case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 21)) { - _Internal::set_has_pitch(&has_bits); - _impl_.pitch_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional float xMin = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 29)) { - _Internal::set_has_xmin(&has_bits); - _impl_.xmin_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional float yMin = 4; - case 4: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 37)) { - _Internal::set_has_ymin(&has_bits); - _impl_.ymin_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional float xMax = 5; - case 5: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 45)) { - _Internal::set_has_xmax(&has_bits); - _impl_.xmax_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional float yMax = 6; - case 6: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 53)) { - _Internal::set_has_ymax(&has_bits); - _impl_.ymax_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad(ptr); - ptr += sizeof(float); - } else - goto handle_unusual; - continue; - // optional string attributesIdString = 7; - case 7: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { - auto str = _internal_mutable_attributesidstring(); - ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); - CHK_(ptr); - CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.attributesIdString")); - } else - goto handle_unusual; - continue; - // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; - case 8: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_pinrecords(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr)); - } else - goto handle_unusual; - continue; - // map pinRecordsByName = 9; - case 9: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { ptr -= 1; do { ptr += 1; - ptr = ctx->ParseMessage(&_impl_.pinrecordsbyname_, ptr); + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); CHK_(ptr); if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr)); + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); } else goto handle_unusual; - continue; - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 10; - case 10: - if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 82)) { + continue; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { ptr -= 1; do { ptr += 1; - ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + ptr = ctx->ParseMessage(_internal_add_featureidrecords(), ptr); CHK_(ptr); if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr)); + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr)); } else goto handle_unusual; continue; @@ -2855,271 +2972,128 @@ const char* EdaDataFile_PackageRecord::_InternalParse(const char* ptr, ::_pbi::P #undef CHK_ } -uint8_t* EdaDataFile_PackageRecord::_InternalSerialize( +uint8_t* EdaDataFile_FeatureGroupRecord::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // optional string name = 1; - if (_internal_has_name()) { - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_name().data(), static_cast(this->_internal_name().length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.name"); - target = stream->WriteStringMaybeAliased( - 1, this->_internal_name(), target); - } - - // optional float pitch = 2; - if (_internal_has_pitch()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(2, this->_internal_pitch(), target); - } - - // optional float xMin = 3; - if (_internal_has_xmin()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(3, this->_internal_xmin(), target); - } - - // optional float yMin = 4; - if (_internal_has_ymin()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(4, this->_internal_ymin(), target); - } - - // optional float xMax = 5; - if (_internal_has_xmax()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(5, this->_internal_xmax(), target); - } - - // optional float yMax = 6; - if (_internal_has_ymax()) { - target = stream->EnsureSpace(target); - target = ::_pbi::WireFormatLite::WriteFloatToArray(6, this->_internal_ymax(), target); - } - - // optional string attributesIdString = 7; - if (_internal_has_attributesidstring()) { + // optional string type = 1; + if (_internal_has_type()) { ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - this->_internal_attributesidstring().data(), static_cast(this->_internal_attributesidstring().length()), + this->_internal_type().data(), static_cast(this->_internal_type().length()), ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.attributesIdString"); + "Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type"); target = stream->WriteStringMaybeAliased( - 7, this->_internal_attributesidstring(), target); + 1, this->_internal_type(), target); } - // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 2; for (unsigned i = 0, - n = static_cast(this->_internal_pinrecords_size()); i < n; i++) { - const auto& repfield = this->_internal_pinrecords(i); + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(8, repfield, repfield.GetCachedSize(), target, stream); - } - - // map pinRecordsByName = 9; - if (!this->_internal_pinrecordsbyname().empty()) { - using MapType = ::_pb::Map; - using WireHelper = EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::Funcs; - const auto& map_field = this->_internal_pinrecordsbyname(); - auto check_utf8 = [](const MapType::value_type& entry) { - (void)entry; - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( - entry.first.data(), static_cast(entry.first.length()), - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, - "Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecordsByNameEntry.key"); - }; - - if (stream->IsSerializationDeterministic() && map_field.size() > 1) { - for (const auto& entry : ::_pbi::MapSorterPtr(map_field)) { - target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream); - check_utf8(entry); - } - } else { - for (const auto& entry : map_field) { - target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream); - check_utf8(entry); - } - } + InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); } - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 10; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 3; for (unsigned i = 0, - n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { - const auto& repfield = this->_internal_propertyrecords(i); + n = static_cast(this->_internal_featureidrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_featureidrecords(i); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(10, repfield, repfield.GetCachedSize(), target, stream); + InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) return target; } -size_t EdaDataFile_PackageRecord::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) +size_t EdaDataFile_FeatureGroupRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .Odb.Lib.Protobuf.EdaDataFile.PackageRecord.PinRecord pinRecords = 8; - total_size += 1UL * this->_internal_pinrecords_size(); - for (const auto& msg : this->_impl_.pinrecords_) { + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 2; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } - // map pinRecordsByName = 9; - total_size += 1 * - ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_pinrecordsbyname_size()); - for (::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord >::const_iterator - it = this->_internal_pinrecordsbyname().begin(); - it != this->_internal_pinrecordsbyname().end(); ++it) { - total_size += EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second); - } - - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 10; - total_size += 1UL * this->_internal_propertyrecords_size(); - for (const auto& msg : this->_impl_.propertyrecords_) { + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 3; + total_size += 1UL * this->_internal_featureidrecords_size(); + for (const auto& msg : this->_impl_.featureidrecords_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } + // optional string type = 1; cached_has_bits = _impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - // optional string name = 1; - if (cached_has_bits & 0x00000001u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_name()); - } - - // optional string attributesIdString = 7; - if (cached_has_bits & 0x00000002u) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( - this->_internal_attributesidstring()); - } - - // optional float pitch = 2; - if (cached_has_bits & 0x00000004u) { - total_size += 1 + 4; - } - - // optional float xMin = 3; - if (cached_has_bits & 0x00000008u) { - total_size += 1 + 4; - } - - // optional float yMin = 4; - if (cached_has_bits & 0x00000010u) { - total_size += 1 + 4; - } - - // optional float xMax = 5; - if (cached_has_bits & 0x00000020u) { - total_size += 1 + 4; - } - - // optional float yMax = 6; - if (cached_has_bits & 0x00000040u) { - total_size += 1 + 4; - } - + if (cached_has_bits & 0x00000001u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_type()); } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_PackageRecord::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData EdaDataFile_FeatureGroupRecord::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, - EdaDataFile_PackageRecord::MergeImpl + EdaDataFile_FeatureGroupRecord::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_PackageRecord::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*EdaDataFile_FeatureGroupRecord::GetClassData() const { return &_class_data_; } -void EdaDataFile_PackageRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { - auto* const _this = static_cast(&to_msg); - auto& from = static_cast(from_msg); - // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) +void EdaDataFile_FeatureGroupRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) GOOGLE_DCHECK_NE(&from, _this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - _this->_impl_.pinrecords_.MergeFrom(from._impl_.pinrecords_); - _this->_impl_.pinrecordsbyname_.MergeFrom(from._impl_.pinrecordsbyname_); _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); - cached_has_bits = from._impl_._has_bits_[0]; - if (cached_has_bits & 0x0000007fu) { - if (cached_has_bits & 0x00000001u) { - _this->_internal_set_name(from._internal_name()); - } - if (cached_has_bits & 0x00000002u) { - _this->_internal_set_attributesidstring(from._internal_attributesidstring()); - } - if (cached_has_bits & 0x00000004u) { - _this->_impl_.pitch_ = from._impl_.pitch_; - } - if (cached_has_bits & 0x00000008u) { - _this->_impl_.xmin_ = from._impl_.xmin_; - } - if (cached_has_bits & 0x00000010u) { - _this->_impl_.ymin_ = from._impl_.ymin_; - } - if (cached_has_bits & 0x00000020u) { - _this->_impl_.xmax_ = from._impl_.xmax_; - } - if (cached_has_bits & 0x00000040u) { - _this->_impl_.ymax_ = from._impl_.ymax_; - } - _this->_impl_._has_bits_[0] |= cached_has_bits; + _this->_impl_.featureidrecords_.MergeFrom(from._impl_.featureidrecords_); + if (from._internal_has_type()) { + _this->_internal_set_type(from._internal_type()); } _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void EdaDataFile_PackageRecord::CopyFrom(const EdaDataFile_PackageRecord& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) +void EdaDataFile_FeatureGroupRecord::CopyFrom(const EdaDataFile_FeatureGroupRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) if (&from == this) return; Clear(); MergeFrom(from); } -bool EdaDataFile_PackageRecord::IsInitialized() const { +bool EdaDataFile_FeatureGroupRecord::IsInitialized() const { return true; } -void EdaDataFile_PackageRecord::InternalSwap(EdaDataFile_PackageRecord* other) { +void EdaDataFile_FeatureGroupRecord::InternalSwap(EdaDataFile_FeatureGroupRecord* other) { using std::swap; auto* lhs_arena = GetArenaForAllocation(); auto* rhs_arena = other->GetArenaForAllocation(); _internal_metadata_.InternalSwap(&other->_internal_metadata_); swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); - _impl_.pinrecords_.InternalSwap(&other->_impl_.pinrecords_); - _impl_.pinrecordsbyname_.InternalSwap(&other->_impl_.pinrecordsbyname_); _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); + _impl_.featureidrecords_.InternalSwap(&other->_impl_.featureidrecords_); ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.name_, lhs_arena, - &other->_impl_.name_, rhs_arena - ); - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( - &_impl_.attributesidstring_, lhs_arena, - &other->_impl_.attributesidstring_, rhs_arena + &_impl_.type_, lhs_arena, + &other->_impl_.type_, rhs_arena ); - ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord, _impl_.ymax_) - + sizeof(EdaDataFile_PackageRecord::_impl_.ymax_) - - PROTOBUF_FIELD_OFFSET(EdaDataFile_PackageRecord, _impl_.pitch_)>( - reinterpret_cast(&_impl_.pitch_), - reinterpret_cast(&other->_impl_.pitch_)); } -::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_PackageRecord::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile_FeatureGroupRecord::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_edadatafile_2eproto_getter, &descriptor_table_edadatafile_2eproto_once, file_level_metadata_edadatafile_2eproto[6]); @@ -3169,6 +3143,9 @@ class EdaDataFile::_Internal { } }; +void EdaDataFile::clear_propertyrecords() { + _impl_.propertyrecords_.Clear(); +} EdaDataFile::EdaDataFile(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { @@ -3191,6 +3168,8 @@ EdaDataFile::EdaDataFile(const EdaDataFile& from) , /*decltype(_impl_.netrecordsbyname_)*/{} , decltype(_impl_.packagerecords_){from._impl_.packagerecords_} , /*decltype(_impl_.packagerecordsbyname_)*/{} + , decltype(_impl_.propertyrecords_){from._impl_.propertyrecords_} + , decltype(_impl_.featuregrouprecords_){from._impl_.featuregrouprecords_} , decltype(_impl_.path_){} , decltype(_impl_.units_){} , decltype(_impl_.source_){}}; @@ -3239,6 +3218,8 @@ inline void EdaDataFile::SharedCtor( , /*decltype(_impl_.netrecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} , decltype(_impl_.packagerecords_){arena} , /*decltype(_impl_.packagerecordsbyname_)*/{::_pbi::ArenaInitialized(), arena} + , decltype(_impl_.propertyrecords_){arena} + , decltype(_impl_.featuregrouprecords_){arena} , decltype(_impl_.path_){} , decltype(_impl_.units_){} , decltype(_impl_.source_){} @@ -3278,6 +3259,8 @@ inline void EdaDataFile::SharedDtor() { _impl_.packagerecords_.~RepeatedPtrField(); _impl_.packagerecordsbyname_.Destruct(); _impl_.packagerecordsbyname_.~MapField(); + _impl_.propertyrecords_.~RepeatedPtrField(); + _impl_.featuregrouprecords_.~RepeatedPtrField(); _impl_.path_.Destroy(); _impl_.units_.Destroy(); _impl_.source_.Destroy(); @@ -3305,6 +3288,8 @@ void EdaDataFile::Clear() { _impl_.netrecordsbyname_.Clear(); _impl_.packagerecords_.Clear(); _impl_.packagerecordsbyname_.Clear(); + _impl_.propertyrecords_.Clear(); + _impl_.featuregrouprecords_.Clear(); cached_has_bits = _impl_._has_bits_[0]; if (cached_has_bits & 0x00000007u) { if (cached_has_bits & 0x00000001u) { @@ -3455,6 +3440,32 @@ const char* EdaDataFile::_InternalParse(const char* ptr, ::_pbi::ParseContext* c } else goto handle_unusual; continue; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 90)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_propertyrecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord featureGroupRecords = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 98)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_featuregrouprecords(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<98>(ptr)); + } else + goto handle_unusual; + continue; default: goto handle_unusual; } // switch @@ -3613,6 +3624,22 @@ uint8_t* EdaDataFile::_InternalSerialize( } } + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + for (unsigned i = 0, + n = static_cast(this->_internal_propertyrecords_size()); i < n; i++) { + const auto& repfield = this->_internal_propertyrecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(11, repfield, repfield.GetCachedSize(), target, stream); + } + + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord featureGroupRecords = 12; + for (unsigned i = 0, + n = static_cast(this->_internal_featuregrouprecords_size()); i < n; i++) { + const auto& repfield = this->_internal_featuregrouprecords(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(12, repfield, repfield.GetCachedSize(), target, stream); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); @@ -3685,6 +3712,20 @@ size_t EdaDataFile::ByteSizeLong() const { total_size += EdaDataFile_PackageRecordsByNameEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second); } + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + total_size += 1UL * this->_internal_propertyrecords_size(); + for (const auto& msg : this->_impl_.propertyrecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord featureGroupRecords = 12; + total_size += 1UL * this->_internal_featuregrouprecords_size(); + for (const auto& msg : this->_impl_.featuregrouprecords_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + cached_has_bits = _impl_._has_bits_[0]; if (cached_has_bits & 0x00000007u) { // optional string path = 1; @@ -3734,6 +3775,8 @@ void EdaDataFile::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PR _this->_impl_.netrecordsbyname_.MergeFrom(from._impl_.netrecordsbyname_); _this->_impl_.packagerecords_.MergeFrom(from._impl_.packagerecords_); _this->_impl_.packagerecordsbyname_.MergeFrom(from._impl_.packagerecordsbyname_); + _this->_impl_.propertyrecords_.MergeFrom(from._impl_.propertyrecords_); + _this->_impl_.featuregrouprecords_.MergeFrom(from._impl_.featuregrouprecords_); cached_has_bits = from._impl_._has_bits_[0]; if (cached_has_bits & 0x00000007u) { if (cached_has_bits & 0x00000001u) { @@ -3773,6 +3816,8 @@ void EdaDataFile::InternalSwap(EdaDataFile* other) { _impl_.netrecordsbyname_.InternalSwap(&other->_impl_.netrecordsbyname_); _impl_.packagerecords_.InternalSwap(&other->_impl_.packagerecords_); _impl_.packagerecordsbyname_.InternalSwap(&other->_impl_.packagerecordsbyname_); + _impl_.propertyrecords_.InternalSwap(&other->_impl_.propertyrecords_); + _impl_.featuregrouprecords_.InternalSwap(&other->_impl_.featuregrouprecords_); ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( &_impl_.path_, lhs_arena, &other->_impl_.path_, rhs_arena @@ -3798,13 +3843,9 @@ ::PROTOBUF_NAMESPACE_ID::Metadata EdaDataFile::GetMetadata() const { } // namespace Lib } // namespace Odb PROTOBUF_NAMESPACE_OPEN -template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* -Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >(Arena* arena) { - return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >(arena); -} -template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* -Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >(Arena* arena) { - return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >(arena); +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >(arena); } template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord* Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord >(Arena* arena) { @@ -3826,6 +3867,10 @@ template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord* Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord >(Arena* arena) { return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord >(arena); } +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >(arena); +} template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse >(Arena* arena) { return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse >(arena); diff --git a/OdbDesignLib/ProtoBuf/edadatafile.pb.h b/OdbDesignLib/ProtoBuf/edadatafile.pb.h index 6f1c3d88..6e049e36 100644 --- a/OdbDesignLib/ProtoBuf/edadatafile.pb.h +++ b/OdbDesignLib/ProtoBuf/edadatafile.pb.h @@ -34,6 +34,8 @@ #include #include #include +#include "common.pb.h" +#include "enums.pb.h" // @@protoc_insertion_point(includes) #include #define PROTOBUF_INTERNAL_EXPORT_edadatafile_2eproto @@ -54,15 +56,18 @@ namespace Protobuf { class EdaDataFile; struct EdaDataFileDefaultTypeInternal; extern EdaDataFileDefaultTypeInternal _EdaDataFile_default_instance_; +class EdaDataFile_FeatureGroupRecord; +struct EdaDataFile_FeatureGroupRecordDefaultTypeInternal; +extern EdaDataFile_FeatureGroupRecordDefaultTypeInternal _EdaDataFile_FeatureGroupRecord_default_instance_; +class EdaDataFile_FeatureIdRecord; +struct EdaDataFile_FeatureIdRecordDefaultTypeInternal; +extern EdaDataFile_FeatureIdRecordDefaultTypeInternal _EdaDataFile_FeatureIdRecord_default_instance_; class EdaDataFile_NetRecord; struct EdaDataFile_NetRecordDefaultTypeInternal; extern EdaDataFile_NetRecordDefaultTypeInternal _EdaDataFile_NetRecord_default_instance_; class EdaDataFile_NetRecord_SubnetRecord; struct EdaDataFile_NetRecord_SubnetRecordDefaultTypeInternal; extern EdaDataFile_NetRecord_SubnetRecordDefaultTypeInternal _EdaDataFile_NetRecord_SubnetRecord_default_instance_; -class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord; -struct EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal; -extern EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecordDefaultTypeInternal _EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_default_instance_; class EdaDataFile_NetRecordsByNameEntry_DoNotUse; struct EdaDataFile_NetRecordsByNameEntry_DoNotUseDefaultTypeInternal; extern EdaDataFile_NetRecordsByNameEntry_DoNotUseDefaultTypeInternal _EdaDataFile_NetRecordsByNameEntry_DoNotUse_default_instance_; @@ -78,53 +83,50 @@ extern EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUseDefaultTypeIntern class EdaDataFile_PackageRecordsByNameEntry_DoNotUse; struct EdaDataFile_PackageRecordsByNameEntry_DoNotUseDefaultTypeInternal; extern EdaDataFile_PackageRecordsByNameEntry_DoNotUseDefaultTypeInternal _EdaDataFile_PackageRecordsByNameEntry_DoNotUse_default_instance_; -class EdaDataFile_PropertyRecord; -struct EdaDataFile_PropertyRecordDefaultTypeInternal; -extern EdaDataFile_PropertyRecordDefaultTypeInternal _EdaDataFile_PropertyRecord_default_instance_; } // namespace Protobuf } // namespace Lib } // namespace Odb PROTOBUF_NAMESPACE_OPEN template<> ::Odb::Lib::Protobuf::EdaDataFile* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile>(Arena*); +template<> ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord>(Arena*); +template<> ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_NetRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_NetRecord>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord>(Arena*); -template<> ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_NetRecordsByNameEntry_DoNotUse>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse>(Arena*); template<> ::Odb::Lib::Protobuf::EdaDataFile_PackageRecordsByNameEntry_DoNotUse* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_PackageRecordsByNameEntry_DoNotUse>(Arena*); -template<> ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord>(Arena*); PROTOBUF_NAMESPACE_CLOSE namespace Odb { namespace Lib { namespace Protobuf { -enum EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type : int { - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_COPPER = 0, - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_LAMINATE = 1, - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_HOLE = 2, - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +enum EdaDataFile_FeatureIdRecord_Type : int { + EdaDataFile_FeatureIdRecord_Type_COPPER = 0, + EdaDataFile_FeatureIdRecord_Type_LAMINATE = 1, + EdaDataFile_FeatureIdRecord_Type_HOLE = 2, + EdaDataFile_FeatureIdRecord_Type_EdaDataFile_FeatureIdRecord_Type_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + EdaDataFile_FeatureIdRecord_Type_EdaDataFile_FeatureIdRecord_Type_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() }; -bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_IsValid(int value); -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_MIN = EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_COPPER; -constexpr EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_MAX = EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_HOLE; -constexpr int EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_ARRAYSIZE = EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_MAX + 1; +bool EdaDataFile_FeatureIdRecord_Type_IsValid(int value); +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord_Type_Type_MIN = EdaDataFile_FeatureIdRecord_Type_COPPER; +constexpr EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord_Type_Type_MAX = EdaDataFile_FeatureIdRecord_Type_HOLE; +constexpr int EdaDataFile_FeatureIdRecord_Type_Type_ARRAYSIZE = EdaDataFile_FeatureIdRecord_Type_Type_MAX + 1; -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor(); +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_FeatureIdRecord_Type_descriptor(); template -inline const std::string& EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Name(T enum_t_value) { - static_assert(::std::is_same::value || +inline const std::string& EdaDataFile_FeatureIdRecord_Type_Name(T enum_t_value) { + static_assert(::std::is_same::value || ::std::is_integral::value, - "Incorrect type passed to function EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Name."); + "Incorrect type passed to function EdaDataFile_FeatureIdRecord_Type_Name."); return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor(), enum_t_value); + EdaDataFile_FeatureIdRecord_Type_descriptor(), enum_t_value); } -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor(), name, value); +inline bool EdaDataFile_FeatureIdRecord_Type_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, EdaDataFile_FeatureIdRecord_Type* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + EdaDataFile_FeatureIdRecord_Type_descriptor(), name, value); } enum EdaDataFile_NetRecord_SubnetRecord_Type : int { EdaDataFile_NetRecord_SubnetRecord_Type_VIA = 0, @@ -288,51 +290,26 @@ inline bool EdaDataFile_PackageRecord_PinRecord_MountType_Parse( return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( EdaDataFile_PackageRecord_PinRecord_MountType_descriptor(), name, value); } -enum EdaDataFile_BoardSide : int { - EdaDataFile_BoardSide_TOP = 0, - EdaDataFile_BoardSide_BOTTOM = 1, - EdaDataFile_BoardSide_EdaDataFile_BoardSide_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), - EdaDataFile_BoardSide_EdaDataFile_BoardSide_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() -}; -bool EdaDataFile_BoardSide_IsValid(int value); -constexpr EdaDataFile_BoardSide EdaDataFile_BoardSide_BoardSide_MIN = EdaDataFile_BoardSide_TOP; -constexpr EdaDataFile_BoardSide EdaDataFile_BoardSide_BoardSide_MAX = EdaDataFile_BoardSide_BOTTOM; -constexpr int EdaDataFile_BoardSide_BoardSide_ARRAYSIZE = EdaDataFile_BoardSide_BoardSide_MAX + 1; - -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* EdaDataFile_BoardSide_descriptor(); -template -inline const std::string& EdaDataFile_BoardSide_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function EdaDataFile_BoardSide_Name."); - return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( - EdaDataFile_BoardSide_descriptor(), enum_t_value); -} -inline bool EdaDataFile_BoardSide_Parse( - ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, EdaDataFile_BoardSide* value) { - return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( - EdaDataFile_BoardSide_descriptor(), name, value); -} // =================================================================== -class EdaDataFile_PropertyRecord final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) */ { +class EdaDataFile_FeatureIdRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) */ { public: - inline EdaDataFile_PropertyRecord() : EdaDataFile_PropertyRecord(nullptr) {} - ~EdaDataFile_PropertyRecord() override; - explicit PROTOBUF_CONSTEXPR EdaDataFile_PropertyRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline EdaDataFile_FeatureIdRecord() : EdaDataFile_FeatureIdRecord(nullptr) {} + ~EdaDataFile_FeatureIdRecord() override; + explicit PROTOBUF_CONSTEXPR EdaDataFile_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - EdaDataFile_PropertyRecord(const EdaDataFile_PropertyRecord& from); - EdaDataFile_PropertyRecord(EdaDataFile_PropertyRecord&& from) noexcept - : EdaDataFile_PropertyRecord() { + EdaDataFile_FeatureIdRecord(const EdaDataFile_FeatureIdRecord& from); + EdaDataFile_FeatureIdRecord(EdaDataFile_FeatureIdRecord&& from) noexcept + : EdaDataFile_FeatureIdRecord() { *this = ::std::move(from); } - inline EdaDataFile_PropertyRecord& operator=(const EdaDataFile_PropertyRecord& from) { + inline EdaDataFile_FeatureIdRecord& operator=(const EdaDataFile_FeatureIdRecord& from) { CopyFrom(from); return *this; } - inline EdaDataFile_PropertyRecord& operator=(EdaDataFile_PropertyRecord&& from) noexcept { + inline EdaDataFile_FeatureIdRecord& operator=(EdaDataFile_FeatureIdRecord&& from) noexcept { if (this == &from) return *this; if (GetOwningArena() == from.GetOwningArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE @@ -355,222 +332,20 @@ class EdaDataFile_PropertyRecord final : static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const EdaDataFile_PropertyRecord& default_instance() { + static const EdaDataFile_FeatureIdRecord& default_instance() { return *internal_default_instance(); } - static inline const EdaDataFile_PropertyRecord* internal_default_instance() { - return reinterpret_cast( - &_EdaDataFile_PropertyRecord_default_instance_); + static inline const EdaDataFile_FeatureIdRecord* internal_default_instance() { + return reinterpret_cast( + &_EdaDataFile_FeatureIdRecord_default_instance_); } static constexpr int kIndexInFileMessages = 0; - friend void swap(EdaDataFile_PropertyRecord& a, EdaDataFile_PropertyRecord& b) { - a.Swap(&b); - } - inline void Swap(EdaDataFile_PropertyRecord* other) { - if (other == this) return; - #ifdef PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() != nullptr && - GetOwningArena() == other->GetOwningArena()) { - #else // PROTOBUF_FORCE_COPY_IN_SWAP - if (GetOwningArena() == other->GetOwningArena()) { - #endif // !PROTOBUF_FORCE_COPY_IN_SWAP - InternalSwap(other); - } else { - ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); - } - } - void UnsafeArenaSwap(EdaDataFile_PropertyRecord* other) { - if (other == this) return; - GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); - InternalSwap(other); - } - - // implements Message ---------------------------------------------- - - EdaDataFile_PropertyRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); - } - using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const EdaDataFile_PropertyRecord& from); - using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const EdaDataFile_PropertyRecord& from) { - EdaDataFile_PropertyRecord::MergeImpl(*this, from); - } - private: - static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); - public: - PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; - bool IsInitialized() const final; - - size_t ByteSizeLong() const final; - const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; - uint8_t* _InternalSerialize( - uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; - int GetCachedSize() const final { return _impl_._cached_size_.Get(); } - - private: - void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); - void SharedDtor(); - void SetCachedSize(int size) const final; - void InternalSwap(EdaDataFile_PropertyRecord* other); - - private: - friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; - static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Odb.Lib.Protobuf.EdaDataFile.PropertyRecord"; - } - protected: - explicit EdaDataFile_PropertyRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned = false); - public: - - static const ClassData _class_data_; - const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; - - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; - - // nested types ---------------------------------------------------- - - // accessors ------------------------------------------------------- - - enum : int { - kFloatValuesFieldNumber = 3, - kNameFieldNumber = 1, - kValueFieldNumber = 2, - }; - // repeated float floatValues = 3; - int floatvalues_size() const; - private: - int _internal_floatvalues_size() const; - public: - void clear_floatvalues(); - private: - float _internal_floatvalues(int index) const; - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& - _internal_floatvalues() const; - void _internal_add_floatvalues(float value); - ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* - _internal_mutable_floatvalues(); - public: - float floatvalues(int index) const; - void set_floatvalues(int index, float value); - void add_floatvalues(float value); - const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& - floatvalues() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* - mutable_floatvalues(); - - // optional string name = 1; - bool has_name() const; - private: - bool _internal_has_name() const; - public: - void clear_name(); - const std::string& name() const; - template - void set_name(ArgT0&& arg0, ArgT... args); - std::string* mutable_name(); - PROTOBUF_NODISCARD std::string* release_name(); - void set_allocated_name(std::string* name); - private: - const std::string& _internal_name() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); - std::string* _internal_mutable_name(); - public: - - // optional string value = 2; - bool has_value() const; - private: - bool _internal_has_value() const; - public: - void clear_value(); - const std::string& value() const; - template - void set_value(ArgT0&& arg0, ArgT... args); - std::string* mutable_value(); - PROTOBUF_NODISCARD std::string* release_value(); - void set_allocated_value(std::string* value); - private: - const std::string& _internal_value() const; - inline PROTOBUF_ALWAYS_INLINE void _internal_set_value(const std::string& value); - std::string* _internal_mutable_value(); - public: - - // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord) - private: - class _Internal; - - template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; - typedef void InternalArenaConstructable_; - typedef void DestructorSkippable_; - struct Impl_ { - ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; - mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedField< float > floatvalues_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr value_; - }; - union { Impl_ _impl_; }; - friend struct ::TableStruct_edadatafile_2eproto; -}; -// ------------------------------------------------------------------- - -class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) */ { - public: - inline EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord() : EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(nullptr) {} - ~EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord() override; - explicit PROTOBUF_CONSTEXPR EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from); - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord&& from) noexcept - : EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord() { - *this = ::std::move(from); - } - - inline EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& operator=(const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from) { - CopyFrom(from); - return *this; - } - inline EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& operator=(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord&& from) noexcept { - if (this == &from) return *this; - if (GetOwningArena() == from.GetOwningArena() - #ifdef PROTOBUF_FORCE_COPY_IN_MOVE - && GetOwningArena() != nullptr - #endif // !PROTOBUF_FORCE_COPY_IN_MOVE - ) { - InternalSwap(&from); - } else { - CopyFrom(from); - } - return *this; - } - - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return GetDescriptor(); - } - static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { - return default_instance().GetMetadata().descriptor; - } - static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { - return default_instance().GetMetadata().reflection; - } - static const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& default_instance() { - return *internal_default_instance(); - } - static inline const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* internal_default_instance() { - return reinterpret_cast( - &_EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_default_instance_); - } - static constexpr int kIndexInFileMessages = - 1; - - friend void swap(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& a, EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& b) { + friend void swap(EdaDataFile_FeatureIdRecord& a, EdaDataFile_FeatureIdRecord& b) { a.Swap(&b); } - inline void Swap(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* other) { + inline void Swap(EdaDataFile_FeatureIdRecord* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP if (GetOwningArena() != nullptr && @@ -583,7 +358,7 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* other) { + void UnsafeArenaSwap(EdaDataFile_FeatureIdRecord* other) { if (other == this) return; GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); InternalSwap(other); @@ -591,14 +366,14 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : // implements Message ---------------------------------------------- - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage(arena); + EdaDataFile_FeatureIdRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); } using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from); + void CopyFrom(const EdaDataFile_FeatureIdRecord& from); using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom( const EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& from) { - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::MergeImpl(*this, from); + void MergeFrom( const EdaDataFile_FeatureIdRecord& from) { + EdaDataFile_FeatureIdRecord::MergeImpl(*this, from); } private: static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); @@ -616,15 +391,15 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* other); + void InternalSwap(EdaDataFile_FeatureIdRecord* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord"; + return "Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord"; } protected: - explicit EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + explicit EdaDataFile_FeatureIdRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); public: @@ -635,36 +410,36 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : // nested types ---------------------------------------------------- - typedef EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type Type; + typedef EdaDataFile_FeatureIdRecord_Type Type; static constexpr Type COPPER = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_COPPER; + EdaDataFile_FeatureIdRecord_Type_COPPER; static constexpr Type LAMINATE = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_LAMINATE; + EdaDataFile_FeatureIdRecord_Type_LAMINATE; static constexpr Type HOLE = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_HOLE; + EdaDataFile_FeatureIdRecord_Type_HOLE; static inline bool Type_IsValid(int value) { - return EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_IsValid(value); + return EdaDataFile_FeatureIdRecord_Type_IsValid(value); } static constexpr Type Type_MIN = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_MIN; + EdaDataFile_FeatureIdRecord_Type_Type_MIN; static constexpr Type Type_MAX = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_MAX; + EdaDataFile_FeatureIdRecord_Type_Type_MAX; static constexpr int Type_ARRAYSIZE = - EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Type_ARRAYSIZE; + EdaDataFile_FeatureIdRecord_Type_Type_ARRAYSIZE; static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Type_descriptor() { - return EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor(); + return EdaDataFile_FeatureIdRecord_Type_descriptor(); } template static inline const std::string& Type_Name(T enum_t_value) { static_assert(::std::is_same::value || ::std::is_integral::value, "Incorrect type passed to function Type_Name."); - return EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Name(enum_t_value); + return EdaDataFile_FeatureIdRecord_Type_Name(enum_t_value); } static inline bool Type_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Type* value) { - return EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_Parse(name, value); + return EdaDataFile_FeatureIdRecord_Type_Parse(name, value); } // accessors ------------------------------------------------------- @@ -674,17 +449,17 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : kLayerNumberFieldNumber = 2, kFeatureNumberFieldNumber = 3, }; - // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.Type type = 1; + // optional .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.Type type = 1; bool has_type() const; private: bool _internal_has_type() const; public: void clear_type(); - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type type() const; - void set_type(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type value); + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type type() const; + void set_type(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type value); private: - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type _internal_type() const; - void _internal_set_type(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type value); + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type _internal_type() const; + void _internal_set_type(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type value); public: // optional uint32 layerNumber = 2; @@ -713,7 +488,7 @@ class EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord final : void _internal_set_featurenumber(uint32_t value); public: - // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord) + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord) private: class _Internal; @@ -780,7 +555,7 @@ class EdaDataFile_NetRecord_SubnetRecord final : &_EdaDataFile_NetRecord_SubnetRecord_default_instance_); } static constexpr int kIndexInFileMessages = - 2; + 1; friend void swap(EdaDataFile_NetRecord_SubnetRecord& a, EdaDataFile_NetRecord_SubnetRecord& b) { a.Swap(&b); @@ -850,8 +625,6 @@ class EdaDataFile_NetRecord_SubnetRecord final : // nested types ---------------------------------------------------- - typedef EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord FeatureIdRecord; - typedef EdaDataFile_NetRecord_SubnetRecord_Type Type; static constexpr Type VIA = EdaDataFile_NetRecord_SubnetRecord_Type_VIA; @@ -962,22 +735,22 @@ class EdaDataFile_NetRecord_SubnetRecord final : kComponentNumberFieldNumber = 7, kToeprintNumberFieldNumber = 8, }; - // repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord featureIdRecords = 2; + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 2; int featureidrecords_size() const; private: int _internal_featureidrecords_size() const; public: void clear_featureidrecords(); - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* mutable_featureidrecords(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >* + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* mutable_featureidrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >* mutable_featureidrecords(); private: - const ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& _internal_featureidrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* _internal_add_featureidrecords(); + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& _internal_featureidrecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* _internal_add_featureidrecords(); public: - const ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& featureidrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* add_featureidrecords(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >& + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& featureidrecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* add_featureidrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >& featureidrecords() const; // optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.Type type = 1; @@ -1032,17 +805,17 @@ class EdaDataFile_NetRecord_SubnetRecord final : void _internal_set_fillsize(float value); public: - // optional .Odb.Lib.Protobuf.EdaDataFile.BoardSide side = 6; + // optional .Odb.Lib.Protobuf.BoardSide side = 6; bool has_side() const; private: bool _internal_has_side() const; public: void clear_side(); - ::Odb::Lib::Protobuf::EdaDataFile_BoardSide side() const; - void set_side(::Odb::Lib::Protobuf::EdaDataFile_BoardSide value); + ::Odb::Lib::Protobuf::BoardSide side() const; + void set_side(::Odb::Lib::Protobuf::BoardSide value); private: - ::Odb::Lib::Protobuf::EdaDataFile_BoardSide _internal_side() const; - void _internal_set_side(::Odb::Lib::Protobuf::EdaDataFile_BoardSide value); + ::Odb::Lib::Protobuf::BoardSide _internal_side() const; + void _internal_set_side(::Odb::Lib::Protobuf::BoardSide value); public: // optional uint32 componentNumber = 7; @@ -1081,7 +854,7 @@ class EdaDataFile_NetRecord_SubnetRecord final : struct Impl_ { ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord > featureidrecords_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord > featureidrecords_; int type_; int filltype_; int cutouttype_; @@ -1143,7 +916,7 @@ class EdaDataFile_NetRecord final : &_EdaDataFile_NetRecord_default_instance_); } static constexpr int kIndexInFileMessages = - 3; + 2; friend void swap(EdaDataFile_NetRecord& a, EdaDataFile_NetRecord& b) { a.Swap(&b); @@ -1242,22 +1015,22 @@ class EdaDataFile_NetRecord final : const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord >& subnetrecords() const; - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 5; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 5; int propertyrecords_size() const; private: int _internal_propertyrecords_size() const; public: void clear_propertyrecords(); - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* mutable_propertyrecords(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >* + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* mutable_propertyrecords(); private: - const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& _internal_propertyrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* _internal_add_propertyrecords(); + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); public: - const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& propertyrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* add_propertyrecords(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >& + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& propertyrecords() const; // optional string name = 1; @@ -1320,7 +1093,7 @@ class EdaDataFile_NetRecord final : ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord > subnetrecords_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr attributesidstring_; uint32_t index_; @@ -1404,7 +1177,7 @@ class EdaDataFile_PackageRecord_PinRecord final : &_EdaDataFile_PackageRecord_PinRecord_default_instance_); } static constexpr int kIndexInFileMessages = - 5; + 4; friend void swap(EdaDataFile_PackageRecord_PinRecord& a, EdaDataFile_PackageRecord_PinRecord& b) { a.Swap(&b); @@ -1788,7 +1561,7 @@ class EdaDataFile_PackageRecord final : &_EdaDataFile_PackageRecord_default_instance_); } static constexpr int kIndexInFileMessages = - 6; + 5; friend void swap(EdaDataFile_PackageRecord& a, EdaDataFile_PackageRecord& b) { a.Swap(&b); @@ -1911,22 +1684,22 @@ class EdaDataFile_PackageRecord final : ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord >* mutable_pinrecordsbyname(); - // repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 10; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 10; int propertyrecords_size() const; private: int _internal_propertyrecords_size() const; public: void clear_propertyrecords(); - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* mutable_propertyrecords(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >* + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* mutable_propertyrecords(); private: - const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& _internal_propertyrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* _internal_add_propertyrecords(); + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); public: - const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& propertyrecords(int index) const; - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* add_propertyrecords(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >& + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& propertyrecords() const; // optional string name = 1; @@ -2026,11 +1799,220 @@ class EdaDataFile_PackageRecord final : float ymax() const; void set_ymax(float value); private: - float _internal_ymax() const; - void _internal_set_ymax(float value); + float _internal_ymax() const; + void _internal_set_ymax(float value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord > pinrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::MapField< + EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse, + std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> pinrecordsbyname_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr attributesidstring_; + float pitch_; + float xmin_; + float ymin_; + float xmax_; + float ymax_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_edadatafile_2eproto; +}; +// ------------------------------------------------------------------- + +class EdaDataFile_FeatureGroupRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) */ { + public: + inline EdaDataFile_FeatureGroupRecord() : EdaDataFile_FeatureGroupRecord(nullptr) {} + ~EdaDataFile_FeatureGroupRecord() override; + explicit PROTOBUF_CONSTEXPR EdaDataFile_FeatureGroupRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + EdaDataFile_FeatureGroupRecord(const EdaDataFile_FeatureGroupRecord& from); + EdaDataFile_FeatureGroupRecord(EdaDataFile_FeatureGroupRecord&& from) noexcept + : EdaDataFile_FeatureGroupRecord() { + *this = ::std::move(from); + } + + inline EdaDataFile_FeatureGroupRecord& operator=(const EdaDataFile_FeatureGroupRecord& from) { + CopyFrom(from); + return *this; + } + inline EdaDataFile_FeatureGroupRecord& operator=(EdaDataFile_FeatureGroupRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const EdaDataFile_FeatureGroupRecord& default_instance() { + return *internal_default_instance(); + } + static inline const EdaDataFile_FeatureGroupRecord* internal_default_instance() { + return reinterpret_cast( + &_EdaDataFile_FeatureGroupRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + friend void swap(EdaDataFile_FeatureGroupRecord& a, EdaDataFile_FeatureGroupRecord& b) { + a.Swap(&b); + } + inline void Swap(EdaDataFile_FeatureGroupRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(EdaDataFile_FeatureGroupRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + EdaDataFile_FeatureGroupRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const EdaDataFile_FeatureGroupRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const EdaDataFile_FeatureGroupRecord& from) { + EdaDataFile_FeatureGroupRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(EdaDataFile_FeatureGroupRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord"; + } + protected: + explicit EdaDataFile_FeatureGroupRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kPropertyRecordsFieldNumber = 2, + kFeatureIdRecordsFieldNumber = 3, + kTypeFieldNumber = 1, + }; + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 2; + int propertyrecords_size() const; + private: + int _internal_propertyrecords_size() const; + public: + void clear_propertyrecords(); + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* + mutable_propertyrecords(); + private: + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); + public: + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& + propertyrecords() const; + + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 3; + int featureidrecords_size() const; + private: + int _internal_featureidrecords_size() const; + public: + void clear_featureidrecords(); + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* mutable_featureidrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >* + mutable_featureidrecords(); + private: + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& _internal_featureidrecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* _internal_add_featureidrecords(); + public: + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& featureidrecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* add_featureidrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >& + featureidrecords() const; + + // optional string type = 1; + bool has_type() const; + private: + bool _internal_has_type() const; + public: + void clear_type(); + const std::string& type() const; + template + void set_type(ArgT0&& arg0, ArgT... args); + std::string* mutable_type(); + PROTOBUF_NODISCARD std::string* release_type(); + void set_allocated_type(std::string* type); + private: + const std::string& _internal_type() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_type(const std::string& value); + std::string* _internal_mutable_type(); public: - // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.PackageRecord) + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord) private: class _Internal; @@ -2040,20 +2022,9 @@ class EdaDataFile_PackageRecord final : struct Impl_ { ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord > pinrecords_; - ::PROTOBUF_NAMESPACE_ID::internal::MapField< - EdaDataFile_PackageRecord_PinRecordsByNameEntry_DoNotUse, - std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord, - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> pinrecordsbyname_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord > propertyrecords_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; - ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr attributesidstring_; - float pitch_; - float xmin_; - float ymin_; - float xmax_; - float ymax_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord > featureidrecords_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr type_; }; union { Impl_ _impl_; }; friend struct ::TableStruct_edadatafile_2eproto; @@ -2232,39 +2203,10 @@ class EdaDataFile final : // nested types ---------------------------------------------------- - typedef EdaDataFile_PropertyRecord PropertyRecord; + typedef EdaDataFile_FeatureIdRecord FeatureIdRecord; typedef EdaDataFile_NetRecord NetRecord; typedef EdaDataFile_PackageRecord PackageRecord; - - typedef EdaDataFile_BoardSide BoardSide; - static constexpr BoardSide TOP = - EdaDataFile_BoardSide_TOP; - static constexpr BoardSide BOTTOM = - EdaDataFile_BoardSide_BOTTOM; - static inline bool BoardSide_IsValid(int value) { - return EdaDataFile_BoardSide_IsValid(value); - } - static constexpr BoardSide BoardSide_MIN = - EdaDataFile_BoardSide_BoardSide_MIN; - static constexpr BoardSide BoardSide_MAX = - EdaDataFile_BoardSide_BoardSide_MAX; - static constexpr int BoardSide_ARRAYSIZE = - EdaDataFile_BoardSide_BoardSide_ARRAYSIZE; - static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* - BoardSide_descriptor() { - return EdaDataFile_BoardSide_descriptor(); - } - template - static inline const std::string& BoardSide_Name(T enum_t_value) { - static_assert(::std::is_same::value || - ::std::is_integral::value, - "Incorrect type passed to function BoardSide_Name."); - return EdaDataFile_BoardSide_Name(enum_t_value); - } - static inline bool BoardSide_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, - BoardSide* value) { - return EdaDataFile_BoardSide_Parse(name, value); - } + typedef EdaDataFile_FeatureGroupRecord FeatureGroupRecord; // accessors ------------------------------------------------------- @@ -2276,6 +2218,8 @@ class EdaDataFile final : kNetRecordsByNameFieldNumber = 8, kPackageRecordsFieldNumber = 9, kPackageRecordsByNameFieldNumber = 10, + kPropertyRecordsFieldNumber = 11, + kFeatureGroupRecordsFieldNumber = 12, kPathFieldNumber = 1, kUnitsFieldNumber = 2, kSourceFieldNumber = 3, @@ -2422,6 +2366,42 @@ class EdaDataFile final : ::PROTOBUF_NAMESPACE_ID::Map< std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord >* mutable_packagerecordsbyname(); + // repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; + int propertyrecords_size() const; + private: + int _internal_propertyrecords_size() const; + public: + void clear_propertyrecords(); + ::Odb::Lib::Protobuf::PropertyRecord* mutable_propertyrecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* + mutable_propertyrecords(); + private: + const ::Odb::Lib::Protobuf::PropertyRecord& _internal_propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* _internal_add_propertyrecords(); + public: + const ::Odb::Lib::Protobuf::PropertyRecord& propertyrecords(int index) const; + ::Odb::Lib::Protobuf::PropertyRecord* add_propertyrecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& + propertyrecords() const; + + // repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord featureGroupRecords = 12; + int featuregrouprecords_size() const; + private: + int _internal_featuregrouprecords_size() const; + public: + void clear_featuregrouprecords(); + ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* mutable_featuregrouprecords(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >* + mutable_featuregrouprecords(); + private: + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord& _internal_featuregrouprecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* _internal_add_featuregrouprecords(); + public: + const ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord& featuregrouprecords(int index) const; + ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* add_featuregrouprecords(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >& + featuregrouprecords() const; + // optional string path = 1; bool has_path() const; private: @@ -2501,6 +2481,8 @@ class EdaDataFile final : std::string, ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE> packagerecordsbyname_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord > propertyrecords_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord > featuregrouprecords_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr path_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr units_; ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr source_; @@ -2517,277 +2499,90 @@ class EdaDataFile final : #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wstrict-aliasing" #endif // __GNUC__ -// EdaDataFile_PropertyRecord - -// optional string name = 1; -inline bool EdaDataFile_PropertyRecord::_internal_has_name() const { - bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; - return value; -} -inline bool EdaDataFile_PropertyRecord::has_name() const { - return _internal_has_name(); -} -inline void EdaDataFile_PropertyRecord::clear_name() { - _impl_.name_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000001u; -} -inline const std::string& EdaDataFile_PropertyRecord::name() const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name) - return _internal_name(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void EdaDataFile_PropertyRecord::set_name(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name) -} -inline std::string* EdaDataFile_PropertyRecord::mutable_name() { - std::string* _s = _internal_mutable_name(); - // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name) - return _s; -} -inline const std::string& EdaDataFile_PropertyRecord::_internal_name() const { - return _impl_.name_.Get(); -} -inline void EdaDataFile_PropertyRecord::_internal_set_name(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000001u; - _impl_.name_.Set(value, GetArenaForAllocation()); -} -inline std::string* EdaDataFile_PropertyRecord::_internal_mutable_name() { - _impl_._has_bits_[0] |= 0x00000001u; - return _impl_.name_.Mutable(GetArenaForAllocation()); -} -inline std::string* EdaDataFile_PropertyRecord::release_name() { - // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name) - if (!_internal_has_name()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000001u; - auto* p = _impl_.name_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void EdaDataFile_PropertyRecord::set_allocated_name(std::string* name) { - if (name != nullptr) { - _impl_._has_bits_[0] |= 0x00000001u; - } else { - _impl_._has_bits_[0] &= ~0x00000001u; - } - _impl_.name_.SetAllocated(name, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.name_.IsDefault()) { - _impl_.name_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.name) -} - -// optional string value = 2; -inline bool EdaDataFile_PropertyRecord::_internal_has_value() const { - bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; - return value; -} -inline bool EdaDataFile_PropertyRecord::has_value() const { - return _internal_has_value(); -} -inline void EdaDataFile_PropertyRecord::clear_value() { - _impl_.value_.ClearToEmpty(); - _impl_._has_bits_[0] &= ~0x00000002u; -} -inline const std::string& EdaDataFile_PropertyRecord::value() const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value) - return _internal_value(); -} -template -inline PROTOBUF_ALWAYS_INLINE -void EdaDataFile_PropertyRecord::set_value(ArgT0&& arg0, ArgT... args) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.value_.Set(static_cast(arg0), args..., GetArenaForAllocation()); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value) -} -inline std::string* EdaDataFile_PropertyRecord::mutable_value() { - std::string* _s = _internal_mutable_value(); - // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value) - return _s; -} -inline const std::string& EdaDataFile_PropertyRecord::_internal_value() const { - return _impl_.value_.Get(); -} -inline void EdaDataFile_PropertyRecord::_internal_set_value(const std::string& value) { - _impl_._has_bits_[0] |= 0x00000002u; - _impl_.value_.Set(value, GetArenaForAllocation()); -} -inline std::string* EdaDataFile_PropertyRecord::_internal_mutable_value() { - _impl_._has_bits_[0] |= 0x00000002u; - return _impl_.value_.Mutable(GetArenaForAllocation()); -} -inline std::string* EdaDataFile_PropertyRecord::release_value() { - // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value) - if (!_internal_has_value()) { - return nullptr; - } - _impl_._has_bits_[0] &= ~0x00000002u; - auto* p = _impl_.value_.Release(); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.value_.IsDefault()) { - _impl_.value_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - return p; -} -inline void EdaDataFile_PropertyRecord::set_allocated_value(std::string* value) { - if (value != nullptr) { - _impl_._has_bits_[0] |= 0x00000002u; - } else { - _impl_._has_bits_[0] &= ~0x00000002u; - } - _impl_.value_.SetAllocated(value, GetArenaForAllocation()); -#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING - if (_impl_.value_.IsDefault()) { - _impl_.value_.Set("", GetArenaForAllocation()); - } -#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING - // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.value) -} - -// repeated float floatValues = 3; -inline int EdaDataFile_PropertyRecord::_internal_floatvalues_size() const { - return _impl_.floatvalues_.size(); -} -inline int EdaDataFile_PropertyRecord::floatvalues_size() const { - return _internal_floatvalues_size(); -} -inline void EdaDataFile_PropertyRecord::clear_floatvalues() { - _impl_.floatvalues_.Clear(); -} -inline float EdaDataFile_PropertyRecord::_internal_floatvalues(int index) const { - return _impl_.floatvalues_.Get(index); -} -inline float EdaDataFile_PropertyRecord::floatvalues(int index) const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.floatValues) - return _internal_floatvalues(index); -} -inline void EdaDataFile_PropertyRecord::set_floatvalues(int index, float value) { - _impl_.floatvalues_.Set(index, value); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.floatValues) -} -inline void EdaDataFile_PropertyRecord::_internal_add_floatvalues(float value) { - _impl_.floatvalues_.Add(value); -} -inline void EdaDataFile_PropertyRecord::add_floatvalues(float value) { - _internal_add_floatvalues(value); - // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.floatValues) -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& -EdaDataFile_PropertyRecord::_internal_floatvalues() const { - return _impl_.floatvalues_; -} -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >& -EdaDataFile_PropertyRecord::floatvalues() const { - // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.floatValues) - return _internal_floatvalues(); -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* -EdaDataFile_PropertyRecord::_internal_mutable_floatvalues() { - return &_impl_.floatvalues_; -} -inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< float >* -EdaDataFile_PropertyRecord::mutable_floatvalues() { - // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.PropertyRecord.floatValues) - return _internal_mutable_floatvalues(); -} - -// ------------------------------------------------------------------- +// EdaDataFile_FeatureIdRecord -// EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord - -// optional .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.Type type = 1; -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_has_type() const { +// optional .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.Type type = 1; +inline bool EdaDataFile_FeatureIdRecord::_internal_has_type() const { bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; return value; } -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::has_type() const { +inline bool EdaDataFile_FeatureIdRecord::has_type() const { return _internal_has_type(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::clear_type() { +inline void EdaDataFile_FeatureIdRecord::clear_type() { _impl_.type_ = 0; _impl_._has_bits_[0] &= ~0x00000001u; } -inline ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_type() const { - return static_cast< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type >(_impl_.type_); +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::_internal_type() const { + return static_cast< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type >(_impl_.type_); } -inline ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::type() const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.type) +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type EdaDataFile_FeatureIdRecord::type() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.type) return _internal_type(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_set_type(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type value) { +inline void EdaDataFile_FeatureIdRecord::_internal_set_type(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type value) { _impl_._has_bits_[0] |= 0x00000001u; _impl_.type_ = value; } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::set_type(::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type value) { +inline void EdaDataFile_FeatureIdRecord::set_type(::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type value) { _internal_set_type(value); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.type) + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.type) } // optional uint32 layerNumber = 2; -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_has_layernumber() const { +inline bool EdaDataFile_FeatureIdRecord::_internal_has_layernumber() const { bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; return value; } -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::has_layernumber() const { +inline bool EdaDataFile_FeatureIdRecord::has_layernumber() const { return _internal_has_layernumber(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::clear_layernumber() { +inline void EdaDataFile_FeatureIdRecord::clear_layernumber() { _impl_.layernumber_ = 0u; _impl_._has_bits_[0] &= ~0x00000002u; } -inline uint32_t EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_layernumber() const { +inline uint32_t EdaDataFile_FeatureIdRecord::_internal_layernumber() const { return _impl_.layernumber_; } -inline uint32_t EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::layernumber() const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.layerNumber) +inline uint32_t EdaDataFile_FeatureIdRecord::layernumber() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.layerNumber) return _internal_layernumber(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_set_layernumber(uint32_t value) { +inline void EdaDataFile_FeatureIdRecord::_internal_set_layernumber(uint32_t value) { _impl_._has_bits_[0] |= 0x00000002u; _impl_.layernumber_ = value; } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::set_layernumber(uint32_t value) { +inline void EdaDataFile_FeatureIdRecord::set_layernumber(uint32_t value) { _internal_set_layernumber(value); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.layerNumber) + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.layerNumber) } // optional uint32 featureNumber = 3; -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_has_featurenumber() const { +inline bool EdaDataFile_FeatureIdRecord::_internal_has_featurenumber() const { bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; return value; } -inline bool EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::has_featurenumber() const { +inline bool EdaDataFile_FeatureIdRecord::has_featurenumber() const { return _internal_has_featurenumber(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::clear_featurenumber() { +inline void EdaDataFile_FeatureIdRecord::clear_featurenumber() { _impl_.featurenumber_ = 0u; _impl_._has_bits_[0] &= ~0x00000004u; } -inline uint32_t EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_featurenumber() const { +inline uint32_t EdaDataFile_FeatureIdRecord::_internal_featurenumber() const { return _impl_.featurenumber_; } -inline uint32_t EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::featurenumber() const { - // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.featureNumber) +inline uint32_t EdaDataFile_FeatureIdRecord::featurenumber() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.featureNumber) return _internal_featurenumber(); } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::_internal_set_featurenumber(uint32_t value) { +inline void EdaDataFile_FeatureIdRecord::_internal_set_featurenumber(uint32_t value) { _impl_._has_bits_[0] |= 0x00000004u; _impl_.featurenumber_ = value; } -inline void EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord::set_featurenumber(uint32_t value) { +inline void EdaDataFile_FeatureIdRecord::set_featurenumber(uint32_t value) { _internal_set_featurenumber(value); - // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord.featureNumber) + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord.featureNumber) } // ------------------------------------------------------------------- @@ -2822,7 +2617,7 @@ inline void EdaDataFile_NetRecord_SubnetRecord::set_type(::Odb::Lib::Protobuf::E // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.type) } -// repeated .Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.FeatureIdRecord featureIdRecords = 2; +// repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 2; inline int EdaDataFile_NetRecord_SubnetRecord::_internal_featureidrecords_size() const { return _impl_.featureidrecords_.size(); } @@ -2832,31 +2627,31 @@ inline int EdaDataFile_NetRecord_SubnetRecord::featureidrecords_size() const { inline void EdaDataFile_NetRecord_SubnetRecord::clear_featureidrecords() { _impl_.featureidrecords_.Clear(); } -inline ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::mutable_featureidrecords(int index) { +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::mutable_featureidrecords(int index) { // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.featureIdRecords) return _impl_.featureidrecords_.Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >* +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >* EdaDataFile_NetRecord_SubnetRecord::mutable_featureidrecords() { // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.featureIdRecords) return &_impl_.featureidrecords_; } -inline const ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& EdaDataFile_NetRecord_SubnetRecord::_internal_featureidrecords(int index) const { +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& EdaDataFile_NetRecord_SubnetRecord::_internal_featureidrecords(int index) const { return _impl_.featureidrecords_.Get(index); } -inline const ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord& EdaDataFile_NetRecord_SubnetRecord::featureidrecords(int index) const { +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& EdaDataFile_NetRecord_SubnetRecord::featureidrecords(int index) const { // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.featureIdRecords) return _internal_featureidrecords(index); } -inline ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::_internal_add_featureidrecords() { +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::_internal_add_featureidrecords() { return _impl_.featureidrecords_.Add(); } -inline ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::add_featureidrecords() { - ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord* _add = _internal_add_featureidrecords(); +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_NetRecord_SubnetRecord::add_featureidrecords() { + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* _add = _internal_add_featureidrecords(); // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.featureIdRecords) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord >& +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >& EdaDataFile_NetRecord_SubnetRecord::featureidrecords() const { // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.featureIdRecords) return _impl_.featureidrecords_; @@ -2946,7 +2741,7 @@ inline void EdaDataFile_NetRecord_SubnetRecord::set_fillsize(float value) { // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.fillSize) } -// optional .Odb.Lib.Protobuf.EdaDataFile.BoardSide side = 6; +// optional .Odb.Lib.Protobuf.BoardSide side = 6; inline bool EdaDataFile_NetRecord_SubnetRecord::_internal_has_side() const { bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; return value; @@ -2958,18 +2753,18 @@ inline void EdaDataFile_NetRecord_SubnetRecord::clear_side() { _impl_.side_ = 0; _impl_._has_bits_[0] &= ~0x00000010u; } -inline ::Odb::Lib::Protobuf::EdaDataFile_BoardSide EdaDataFile_NetRecord_SubnetRecord::_internal_side() const { - return static_cast< ::Odb::Lib::Protobuf::EdaDataFile_BoardSide >(_impl_.side_); +inline ::Odb::Lib::Protobuf::BoardSide EdaDataFile_NetRecord_SubnetRecord::_internal_side() const { + return static_cast< ::Odb::Lib::Protobuf::BoardSide >(_impl_.side_); } -inline ::Odb::Lib::Protobuf::EdaDataFile_BoardSide EdaDataFile_NetRecord_SubnetRecord::side() const { +inline ::Odb::Lib::Protobuf::BoardSide EdaDataFile_NetRecord_SubnetRecord::side() const { // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.side) return _internal_side(); } -inline void EdaDataFile_NetRecord_SubnetRecord::_internal_set_side(::Odb::Lib::Protobuf::EdaDataFile_BoardSide value) { +inline void EdaDataFile_NetRecord_SubnetRecord::_internal_set_side(::Odb::Lib::Protobuf::BoardSide value) { _impl_._has_bits_[0] |= 0x00000010u; _impl_.side_ = value; } -inline void EdaDataFile_NetRecord_SubnetRecord::set_side(::Odb::Lib::Protobuf::EdaDataFile_BoardSide value) { +inline void EdaDataFile_NetRecord_SubnetRecord::set_side(::Odb::Lib::Protobuf::BoardSide value) { _internal_set_side(value); // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.NetRecord.SubnetRecord.side) } @@ -3238,41 +3033,38 @@ EdaDataFile_NetRecord::subnetrecords() const { return _impl_.subnetrecords_; } -// repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 5; +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 5; inline int EdaDataFile_NetRecord::_internal_propertyrecords_size() const { return _impl_.propertyrecords_.size(); } inline int EdaDataFile_NetRecord::propertyrecords_size() const { return _internal_propertyrecords_size(); } -inline void EdaDataFile_NetRecord::clear_propertyrecords() { - _impl_.propertyrecords_.Clear(); -} -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_NetRecord::mutable_propertyrecords(int index) { +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_NetRecord::mutable_propertyrecords(int index) { // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.NetRecord.propertyRecords) return _impl_.propertyrecords_.Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >* +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* EdaDataFile_NetRecord::mutable_propertyrecords() { // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.NetRecord.propertyRecords) return &_impl_.propertyrecords_; } -inline const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& EdaDataFile_NetRecord::_internal_propertyrecords(int index) const { +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_NetRecord::_internal_propertyrecords(int index) const { return _impl_.propertyrecords_.Get(index); } -inline const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& EdaDataFile_NetRecord::propertyrecords(int index) const { +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_NetRecord::propertyrecords(int index) const { // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.NetRecord.propertyRecords) return _internal_propertyrecords(index); } -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_NetRecord::_internal_add_propertyrecords() { +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_NetRecord::_internal_add_propertyrecords() { return _impl_.propertyrecords_.Add(); } -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_NetRecord::add_propertyrecords() { - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* _add = _internal_add_propertyrecords(); +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_NetRecord::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.NetRecord.propertyRecords) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >& +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& EdaDataFile_NetRecord::propertyrecords() const { // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.NetRecord.propertyRecords) return _impl_.propertyrecords_; @@ -3925,41 +3717,38 @@ EdaDataFile_PackageRecord::mutable_pinrecordsbyname() { return _internal_mutable_pinrecordsbyname(); } -// repeated .Odb.Lib.Protobuf.EdaDataFile.PropertyRecord propertyRecords = 10; +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 10; inline int EdaDataFile_PackageRecord::_internal_propertyrecords_size() const { return _impl_.propertyrecords_.size(); } inline int EdaDataFile_PackageRecord::propertyrecords_size() const { return _internal_propertyrecords_size(); } -inline void EdaDataFile_PackageRecord::clear_propertyrecords() { - _impl_.propertyrecords_.Clear(); -} -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_PackageRecord::mutable_propertyrecords(int index) { +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_PackageRecord::mutable_propertyrecords(int index) { // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.propertyRecords) return _impl_.propertyrecords_.Mutable(index); } -inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >* +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* EdaDataFile_PackageRecord::mutable_propertyrecords() { // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.propertyRecords) return &_impl_.propertyrecords_; } -inline const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& EdaDataFile_PackageRecord::_internal_propertyrecords(int index) const { +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_PackageRecord::_internal_propertyrecords(int index) const { return _impl_.propertyrecords_.Get(index); } -inline const ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord& EdaDataFile_PackageRecord::propertyrecords(int index) const { +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_PackageRecord::propertyrecords(int index) const { // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.propertyRecords) return _internal_propertyrecords(index); } -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_PackageRecord::_internal_add_propertyrecords() { +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_PackageRecord::_internal_add_propertyrecords() { return _impl_.propertyrecords_.Add(); } -inline ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* EdaDataFile_PackageRecord::add_propertyrecords() { - ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord* _add = _internal_add_propertyrecords(); +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_PackageRecord::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.propertyRecords) return _add; } -inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_PropertyRecord >& +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& EdaDataFile_PackageRecord::propertyrecords() const { // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.PackageRecord.propertyRecords) return _impl_.propertyrecords_; @@ -3967,6 +3756,155 @@ EdaDataFile_PackageRecord::propertyrecords() const { // ------------------------------------------------------------------- +// EdaDataFile_FeatureGroupRecord + +// optional string type = 1; +inline bool EdaDataFile_FeatureGroupRecord::_internal_has_type() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool EdaDataFile_FeatureGroupRecord::has_type() const { + return _internal_has_type(); +} +inline void EdaDataFile_FeatureGroupRecord::clear_type() { + _impl_.type_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const std::string& EdaDataFile_FeatureGroupRecord::type() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type) + return _internal_type(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void EdaDataFile_FeatureGroupRecord::set_type(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.type_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type) +} +inline std::string* EdaDataFile_FeatureGroupRecord::mutable_type() { + std::string* _s = _internal_mutable_type(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type) + return _s; +} +inline const std::string& EdaDataFile_FeatureGroupRecord::_internal_type() const { + return _impl_.type_.Get(); +} +inline void EdaDataFile_FeatureGroupRecord::_internal_set_type(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.type_.Set(value, GetArenaForAllocation()); +} +inline std::string* EdaDataFile_FeatureGroupRecord::_internal_mutable_type() { + _impl_._has_bits_[0] |= 0x00000001u; + return _impl_.type_.Mutable(GetArenaForAllocation()); +} +inline std::string* EdaDataFile_FeatureGroupRecord::release_type() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type) + if (!_internal_has_type()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000001u; + auto* p = _impl_.type_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.type_.IsDefault()) { + _impl_.type_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void EdaDataFile_FeatureGroupRecord::set_allocated_type(std::string* type) { + if (type != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.type_.SetAllocated(type, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.type_.IsDefault()) { + _impl_.type_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.type) +} + +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 2; +inline int EdaDataFile_FeatureGroupRecord::_internal_propertyrecords_size() const { + return _impl_.propertyrecords_.size(); +} +inline int EdaDataFile_FeatureGroupRecord::propertyrecords_size() const { + return _internal_propertyrecords_size(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_FeatureGroupRecord::mutable_propertyrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.propertyRecords) + return _impl_.propertyrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* +EdaDataFile_FeatureGroupRecord::mutable_propertyrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.propertyRecords) + return &_impl_.propertyrecords_; +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_FeatureGroupRecord::_internal_propertyrecords(int index) const { + return _impl_.propertyrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile_FeatureGroupRecord::propertyrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.propertyRecords) + return _internal_propertyrecords(index); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_FeatureGroupRecord::_internal_add_propertyrecords() { + return _impl_.propertyrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile_FeatureGroupRecord::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.propertyRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& +EdaDataFile_FeatureGroupRecord::propertyrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.propertyRecords) + return _impl_.propertyrecords_; +} + +// repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureIdRecord featureIdRecords = 3; +inline int EdaDataFile_FeatureGroupRecord::_internal_featureidrecords_size() const { + return _impl_.featureidrecords_.size(); +} +inline int EdaDataFile_FeatureGroupRecord::featureidrecords_size() const { + return _internal_featureidrecords_size(); +} +inline void EdaDataFile_FeatureGroupRecord::clear_featureidrecords() { + _impl_.featureidrecords_.Clear(); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_FeatureGroupRecord::mutable_featureidrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.featureIdRecords) + return _impl_.featureidrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >* +EdaDataFile_FeatureGroupRecord::mutable_featureidrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.featureIdRecords) + return &_impl_.featureidrecords_; +} +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& EdaDataFile_FeatureGroupRecord::_internal_featureidrecords(int index) const { + return _impl_.featureidrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord& EdaDataFile_FeatureGroupRecord::featureidrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.featureIdRecords) + return _internal_featureidrecords(index); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_FeatureGroupRecord::_internal_add_featureidrecords() { + return _impl_.featureidrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* EdaDataFile_FeatureGroupRecord::add_featureidrecords() { + ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord* _add = _internal_add_featureidrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.featureIdRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord >& +EdaDataFile_FeatureGroupRecord::featureidrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord.featureIdRecords) + return _impl_.featureidrecords_; +} + +// ------------------------------------------------------------------- + // ------------------------------------------------------------------- // ------------------------------------------------------------------- @@ -4540,6 +4478,83 @@ EdaDataFile::mutable_packagerecordsbyname() { return _internal_mutable_packagerecordsbyname(); } +// repeated .Odb.Lib.Protobuf.PropertyRecord propertyRecords = 11; +inline int EdaDataFile::_internal_propertyrecords_size() const { + return _impl_.propertyrecords_.size(); +} +inline int EdaDataFile::propertyrecords_size() const { + return _internal_propertyrecords_size(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile::mutable_propertyrecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.propertyRecords) + return _impl_.propertyrecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >* +EdaDataFile::mutable_propertyrecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.propertyRecords) + return &_impl_.propertyrecords_; +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile::_internal_propertyrecords(int index) const { + return _impl_.propertyrecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::PropertyRecord& EdaDataFile::propertyrecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.propertyRecords) + return _internal_propertyrecords(index); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile::_internal_add_propertyrecords() { + return _impl_.propertyrecords_.Add(); +} +inline ::Odb::Lib::Protobuf::PropertyRecord* EdaDataFile::add_propertyrecords() { + ::Odb::Lib::Protobuf::PropertyRecord* _add = _internal_add_propertyrecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.propertyRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::PropertyRecord >& +EdaDataFile::propertyrecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.propertyRecords) + return _impl_.propertyrecords_; +} + +// repeated .Odb.Lib.Protobuf.EdaDataFile.FeatureGroupRecord featureGroupRecords = 12; +inline int EdaDataFile::_internal_featuregrouprecords_size() const { + return _impl_.featuregrouprecords_.size(); +} +inline int EdaDataFile::featuregrouprecords_size() const { + return _internal_featuregrouprecords_size(); +} +inline void EdaDataFile::clear_featuregrouprecords() { + _impl_.featuregrouprecords_.Clear(); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* EdaDataFile::mutable_featuregrouprecords(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.EdaDataFile.featureGroupRecords) + return _impl_.featuregrouprecords_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >* +EdaDataFile::mutable_featuregrouprecords() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.EdaDataFile.featureGroupRecords) + return &_impl_.featuregrouprecords_; +} +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord& EdaDataFile::_internal_featuregrouprecords(int index) const { + return _impl_.featuregrouprecords_.Get(index); +} +inline const ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord& EdaDataFile::featuregrouprecords(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.EdaDataFile.featureGroupRecords) + return _internal_featuregrouprecords(index); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* EdaDataFile::_internal_add_featuregrouprecords() { + return _impl_.featuregrouprecords_.Add(); +} +inline ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* EdaDataFile::add_featuregrouprecords() { + ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord* _add = _internal_add_featuregrouprecords(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.EdaDataFile.featureGroupRecords) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::EdaDataFile_FeatureGroupRecord >& +EdaDataFile::featuregrouprecords() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.EdaDataFile.featureGroupRecords) + return _impl_.featuregrouprecords_; +} + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ @@ -4570,10 +4585,10 @@ EdaDataFile::mutable_packagerecordsbyname() { PROTOBUF_NAMESPACE_OPEN -template <> struct is_proto_enum< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type> : ::std::true_type {}; +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type> : ::std::true_type {}; template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type>() { - return ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_FeatureIdRecord_Type_descriptor(); +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type>() { + return ::Odb::Lib::Protobuf::EdaDataFile_FeatureIdRecord_Type_descriptor(); } template <> struct is_proto_enum< ::Odb::Lib::Protobuf::EdaDataFile_NetRecord_SubnetRecord_Type> : ::std::true_type {}; template <> @@ -4605,11 +4620,6 @@ template <> inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_MountType>() { return ::Odb::Lib::Protobuf::EdaDataFile_PackageRecord_PinRecord_MountType_descriptor(); } -template <> struct is_proto_enum< ::Odb::Lib::Protobuf::EdaDataFile_BoardSide> : ::std::true_type {}; -template <> -inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::EdaDataFile_BoardSide>() { - return ::Odb::Lib::Protobuf::EdaDataFile_BoardSide_descriptor(); -} PROTOBUF_NAMESPACE_CLOSE diff --git a/OdbDesignLib/ProtoBuf/enums.pb.cc b/OdbDesignLib/ProtoBuf/enums.pb.cc new file mode 100644 index 00000000..d630383a --- /dev/null +++ b/OdbDesignLib/ProtoBuf/enums.pb.cc @@ -0,0 +1,112 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: enums.proto + +#include "enums.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +PROTOBUF_PRAGMA_INIT_SEG + +namespace _pb = ::PROTOBUF_NAMESPACE_ID; +namespace _pbi = _pb::internal; + +namespace Odb { +namespace Lib { +namespace Protobuf { +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +static const ::_pb::EnumDescriptor* file_level_enum_descriptors_enums_2eproto[3]; +static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_enums_2eproto = nullptr; +const uint32_t TableStruct_enums_2eproto::offsets[1] = {}; +static constexpr ::_pbi::MigrationSchema* schemas = nullptr; +static constexpr ::_pb::Message* const* file_default_instances = nullptr; + +const char descriptor_table_protodef_enums_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = + "\n\013enums.proto\022\020Odb.Lib.Protobuf*-\n\tBoard" + "Side\022\007\n\003Top\020\000\022\n\n\006Bottom\020\001\022\013\n\007Neither\020\002*\"" + "\n\tLineShape\022\n\n\006Square\020\000\022\t\n\005Round\020\001*&\n\010Po" + "larity\022\014\n\010Positive\020\000\022\014\n\010Negative\020\001b\006prot" + "o3" + ; +static ::_pbi::once_flag descriptor_table_enums_2eproto_once; +const ::_pbi::DescriptorTable descriptor_table_enums_2eproto = { + false, false, 162, descriptor_table_protodef_enums_2eproto, + "enums.proto", + &descriptor_table_enums_2eproto_once, nullptr, 0, 0, + schemas, file_default_instances, TableStruct_enums_2eproto::offsets, + nullptr, file_level_enum_descriptors_enums_2eproto, + file_level_service_descriptors_enums_2eproto, +}; +PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_enums_2eproto_getter() { + return &descriptor_table_enums_2eproto; +} + +// Force running AddDescriptors() at dynamic initialization time. +PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_enums_2eproto(&descriptor_table_enums_2eproto); +namespace Odb { +namespace Lib { +namespace Protobuf { +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BoardSide_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_enums_2eproto); + return file_level_enum_descriptors_enums_2eproto[0]; +} +bool BoardSide_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + return true; + default: + return false; + } +} + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LineShape_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_enums_2eproto); + return file_level_enum_descriptors_enums_2eproto[1]; +} +bool LineShape_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Polarity_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_enums_2eproto); + return file_level_enum_descriptors_enums_2eproto[2]; +} +bool Polarity_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + + +// @@protoc_insertion_point(namespace_scope) +} // namespace Protobuf +} // namespace Lib +} // namespace Odb +PROTOBUF_NAMESPACE_OPEN +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) +#include diff --git a/OdbDesignLib/ProtoBuf/enums.pb.h b/OdbDesignLib/ProtoBuf/enums.pb.h new file mode 100644 index 00000000..3e799e41 --- /dev/null +++ b/OdbDesignLib/ProtoBuf/enums.pb.h @@ -0,0 +1,173 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: enums.proto + +#ifndef GOOGLE_PROTOBUF_INCLUDED_enums_2eproto +#define GOOGLE_PROTOBUF_INCLUDED_enums_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3021000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3021012 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_enums_2eproto +PROTOBUF_NAMESPACE_OPEN +namespace internal { +class AnyMetadata; +} // namespace internal +PROTOBUF_NAMESPACE_CLOSE + +// Internal implementation detail -- do not use these members. +struct TableStruct_enums_2eproto { + static const uint32_t offsets[]; +}; +extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_enums_2eproto; +PROTOBUF_NAMESPACE_OPEN +PROTOBUF_NAMESPACE_CLOSE +namespace Odb { +namespace Lib { +namespace Protobuf { + +enum BoardSide : int { + Top = 0, + Bottom = 1, + Neither = 2, + BoardSide_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + BoardSide_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool BoardSide_IsValid(int value); +constexpr BoardSide BoardSide_MIN = Top; +constexpr BoardSide BoardSide_MAX = Neither; +constexpr int BoardSide_ARRAYSIZE = BoardSide_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* BoardSide_descriptor(); +template +inline const std::string& BoardSide_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function BoardSide_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + BoardSide_descriptor(), enum_t_value); +} +inline bool BoardSide_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, BoardSide* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + BoardSide_descriptor(), name, value); +} +enum LineShape : int { + Square = 0, + Round = 1, + LineShape_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + LineShape_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool LineShape_IsValid(int value); +constexpr LineShape LineShape_MIN = Square; +constexpr LineShape LineShape_MAX = Round; +constexpr int LineShape_ARRAYSIZE = LineShape_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* LineShape_descriptor(); +template +inline const std::string& LineShape_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function LineShape_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + LineShape_descriptor(), enum_t_value); +} +inline bool LineShape_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, LineShape* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + LineShape_descriptor(), name, value); +} +enum Polarity : int { + Positive = 0, + Negative = 1, + Polarity_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + Polarity_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool Polarity_IsValid(int value); +constexpr Polarity Polarity_MIN = Positive; +constexpr Polarity Polarity_MAX = Negative; +constexpr int Polarity_ARRAYSIZE = Polarity_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Polarity_descriptor(); +template +inline const std::string& Polarity_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Polarity_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + Polarity_descriptor(), enum_t_value); +} +inline bool Polarity_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Polarity* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + Polarity_descriptor(), name, value); +} +// =================================================================== + + +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) + +} // namespace Protobuf +} // namespace Lib +} // namespace Odb + +PROTOBUF_NAMESPACE_OPEN + +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::BoardSide> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::BoardSide>() { + return ::Odb::Lib::Protobuf::BoardSide_descriptor(); +} +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::LineShape> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::LineShape>() { + return ::Odb::Lib::Protobuf::LineShape_descriptor(); +} +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::Polarity> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::Polarity>() { + return ::Odb::Lib::Protobuf::Polarity_descriptor(); +} + +PROTOBUF_NAMESPACE_CLOSE + +// @@protoc_insertion_point(global_scope) + +#include +#endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_enums_2eproto diff --git a/OdbDesignLib/ProtoBuf/matrixfile.pb.cc b/OdbDesignLib/ProtoBuf/matrixfile.pb.cc index 52e1aca5..a43f7f0b 100644 --- a/OdbDesignLib/ProtoBuf/matrixfile.pb.cc +++ b/OdbDesignLib/ProtoBuf/matrixfile.pb.cc @@ -23,8 +23,54 @@ namespace _pbi = _pb::internal; namespace Odb { namespace Lib { namespace Protobuf { +PROTOBUF_CONSTEXPR MatrixFile_StepRecord::MatrixFile_StepRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.column_)*/0u + , /*decltype(_impl_.id_)*/0u + , /*decltype(_impl_._cached_size_)*/{}} {} +struct MatrixFile_StepRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR MatrixFile_StepRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~MatrixFile_StepRecordDefaultTypeInternal() {} + union { + MatrixFile_StepRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MatrixFile_StepRecordDefaultTypeInternal _MatrixFile_StepRecord_default_instance_; +PROTOBUF_CONSTEXPR MatrixFile_LayerRecord::MatrixFile_LayerRecord( + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.dielectricname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.startname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.endname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.oldname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.addtype_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.row_)*/0u + , /*decltype(_impl_.context_)*/0 + , /*decltype(_impl_.type_)*/0 + , /*decltype(_impl_.polarity_)*/0 + , /*decltype(_impl_.dielectrictype_)*/0 + , /*decltype(_impl_.form_)*/0 + , /*decltype(_impl_.cutop_)*/0u + , /*decltype(_impl_.cubottom_)*/0u + , /*decltype(_impl_.ref_)*/0u + , /*decltype(_impl_.id_)*/0u + , /*decltype(_impl_._cached_size_)*/{}} {} +struct MatrixFile_LayerRecordDefaultTypeInternal { + PROTOBUF_CONSTEXPR MatrixFile_LayerRecordDefaultTypeInternal() + : _instance(::_pbi::ConstantInitialized{}) {} + ~MatrixFile_LayerRecordDefaultTypeInternal() {} + union { + MatrixFile_LayerRecord _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 MatrixFile_LayerRecordDefaultTypeInternal _MatrixFile_LayerRecord_default_instance_; PROTOBUF_CONSTEXPR MatrixFile::MatrixFile( - ::_pbi::ConstantInitialized) {} + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_.steps_)*/{} + , /*decltype(_impl_.layers_)*/{} + , /*decltype(_impl_._cached_size_)*/{}} {} struct MatrixFileDefaultTypeInternal { PROTOBUF_CONSTEXPR MatrixFileDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} @@ -37,35 +83,100 @@ PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORIT } // namespace Protobuf } // namespace Lib } // namespace Odb -static ::_pb::Metadata file_level_metadata_matrixfile_2eproto[1]; -static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_matrixfile_2eproto = nullptr; +static ::_pb::Metadata file_level_metadata_matrixfile_2eproto[3]; +static const ::_pb::EnumDescriptor* file_level_enum_descriptors_matrixfile_2eproto[4]; static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_matrixfile_2eproto = nullptr; const uint32_t TableStruct_matrixfile_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_StepRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_StepRecord, _impl_.column_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_StepRecord, _impl_.id_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_StepRecord, _impl_.name_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.row_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.context_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.type_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.polarity_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.dielectrictype_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.dielectricname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.form_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.cutop_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.cubottom_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.ref_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.startname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.endname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.oldname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.addtype_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile_LayerRecord, _impl_.id_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile, _impl_.steps_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MatrixFile, _impl_.layers_), }; static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, -1, -1, sizeof(::Odb::Lib::Protobuf::MatrixFile)}, + { 0, -1, -1, sizeof(::Odb::Lib::Protobuf::MatrixFile_StepRecord)}, + { 9, -1, -1, sizeof(::Odb::Lib::Protobuf::MatrixFile_LayerRecord)}, + { 31, -1, -1, sizeof(::Odb::Lib::Protobuf::MatrixFile)}, }; static const ::_pb::Message* const file_default_instances[] = { + &::Odb::Lib::Protobuf::_MatrixFile_StepRecord_default_instance_._instance, + &::Odb::Lib::Protobuf::_MatrixFile_LayerRecord_default_instance_._instance, &::Odb::Lib::Protobuf::_MatrixFile_default_instance_._instance, }; const char descriptor_table_protodef_matrixfile_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\020matrixfile.proto\022\020Odb.Lib.Protobuf\"\014\n\n" - "MatrixFileb\006proto3" + "\n\020matrixfile.proto\022\020Odb.Lib.Protobuf\032\013en" + "ums.proto\"\350\007\n\nMatrixFile\0226\n\005steps\030\001 \003(\0132" + "\'.Odb.Lib.Protobuf.MatrixFile.StepRecord" + "\0228\n\006layers\030\002 \003(\0132(.Odb.Lib.Protobuf.Matr" + "ixFile.LayerRecord\0326\n\nStepRecord\022\016\n\006colu" + "mn\030\001 \001(\r\022\n\n\002id\030\002 \001(\r\022\014\n\004name\030\003 \001(\t\032\257\006\n\013L" + "ayerRecord\022\013\n\003row\030\001 \001(\r\022A\n\007context\030\002 \001(\016" + "20.Odb.Lib.Protobuf.MatrixFile.LayerReco" + "rd.Context\022;\n\004type\030\003 \001(\0162-.Odb.Lib.Proto" + "buf.MatrixFile.LayerRecord.Type\022\014\n\004name\030" + "\004 \001(\t\022,\n\010polarity\030\005 \001(\0162\032.Odb.Lib.Protob" + "uf.Polarity\022O\n\016dielectricType\030\006 \001(\01627.Od" + "b.Lib.Protobuf.MatrixFile.LayerRecord.Di" + "electricType\022\026\n\016dielectricName\030\007 \001(\t\022;\n\004" + "form\030\010 \001(\0162-.Odb.Lib.Protobuf.MatrixFile" + ".LayerRecord.Form\022\r\n\005cuTop\030\t \001(\r\022\020\n\010cuBo" + "ttom\030\n \001(\r\022\013\n\003ref\030\013 \001(\r\022\021\n\tstartName\030\014 \001" + "(\t\022\017\n\007endName\030\r \001(\t\022\017\n\007oldName\030\016 \001(\t\022\017\n\007" + "addType\030\017 \001(\t\022\n\n\002id\030\021 \001(\r\"\300\001\n\004Type\022\n\n\006Si" + "gnal\020\000\022\017\n\013PowerGround\020\001\022\016\n\nDielectric\020\002\022" + "\t\n\005Mixed\020\003\022\016\n\nSolderMask\020\004\022\017\n\013SolderPast" + "e\020\005\022\016\n\nSilkScreen\020\006\022\t\n\005Drill\020\007\022\010\n\004Rout\020\010" + "\022\014\n\010Document\020\t\022\r\n\tComponent\020\n\022\010\n\004Mask\020\013\022" + "\023\n\017ConductivePaste\020\014\"\036\n\007Context\022\t\n\005Board" + "\020\000\022\010\n\004Misc\020\001\"1\n\016DielectricType\022\010\n\004None\020\000" + "\022\013\n\007Prepreg\020\001\022\010\n\004Core\020\002\"\033\n\004Form\022\t\n\005Rigid" + "\020\000\022\010\n\004Flex\020\001b\006proto3" ; +static const ::_pbi::DescriptorTable* const descriptor_table_matrixfile_2eproto_deps[1] = { + &::descriptor_table_enums_2eproto, +}; static ::_pbi::once_flag descriptor_table_matrixfile_2eproto_once; const ::_pbi::DescriptorTable descriptor_table_matrixfile_2eproto = { - false, false, 58, descriptor_table_protodef_matrixfile_2eproto, + false, false, 1060, descriptor_table_protodef_matrixfile_2eproto, "matrixfile.proto", - &descriptor_table_matrixfile_2eproto_once, nullptr, 0, 1, + &descriptor_table_matrixfile_2eproto_once, descriptor_table_matrixfile_2eproto_deps, 1, 3, schemas, file_default_instances, TableStruct_matrixfile_2eproto::offsets, file_level_metadata_matrixfile_2eproto, file_level_enum_descriptors_matrixfile_2eproto, file_level_service_descriptors_matrixfile_2eproto, @@ -79,6 +190,1099 @@ PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_in namespace Odb { namespace Lib { namespace Protobuf { +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Type_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_matrixfile_2eproto); + return file_level_enum_descriptors_matrixfile_2eproto[0]; +} +bool MatrixFile_LayerRecord_Type_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + return true; + default: + return false; + } +} + +#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Signal; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::PowerGround; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Dielectric; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Mixed; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::SolderMask; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::SolderPaste; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::SilkScreen; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Drill; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Rout; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Document; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Component; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Mask; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::ConductivePaste; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Type_MIN; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::Type_MAX; +constexpr int MatrixFile_LayerRecord::Type_ARRAYSIZE; +#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Context_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_matrixfile_2eproto); + return file_level_enum_descriptors_matrixfile_2eproto[1]; +} +bool MatrixFile_LayerRecord_Context_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::Board; +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::Misc; +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::Context_MIN; +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::Context_MAX; +constexpr int MatrixFile_LayerRecord::Context_ARRAYSIZE; +#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_DielectricType_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_matrixfile_2eproto); + return file_level_enum_descriptors_matrixfile_2eproto[2]; +} +bool MatrixFile_LayerRecord_DielectricType_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + return true; + default: + return false; + } +} + +#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::None; +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::Prepreg; +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::Core; +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::DielectricType_MIN; +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::DielectricType_MAX; +constexpr int MatrixFile_LayerRecord::DielectricType_ARRAYSIZE; +#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Form_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_matrixfile_2eproto); + return file_level_enum_descriptors_matrixfile_2eproto[3]; +} +bool MatrixFile_LayerRecord_Form_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::Rigid; +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::Flex; +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::Form_MIN; +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::Form_MAX; +constexpr int MatrixFile_LayerRecord::Form_ARRAYSIZE; +#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) + +// =================================================================== + +class MatrixFile_StepRecord::_Internal { + public: +}; + +MatrixFile_StepRecord::MatrixFile_StepRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.MatrixFile.StepRecord) +} +MatrixFile_StepRecord::MatrixFile_StepRecord(const MatrixFile_StepRecord& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + MatrixFile_StepRecord* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.column_){} + , decltype(_impl_.id_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.column_, &from._impl_.column_, + static_cast(reinterpret_cast(&_impl_.id_) - + reinterpret_cast(&_impl_.column_)) + sizeof(_impl_.id_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.MatrixFile.StepRecord) +} + +inline void MatrixFile_StepRecord::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.column_){0u} + , decltype(_impl_.id_){0u} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +MatrixFile_StepRecord::~MatrixFile_StepRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.MatrixFile.StepRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void MatrixFile_StepRecord::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.name_.Destroy(); +} + +void MatrixFile_StepRecord::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void MatrixFile_StepRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.MatrixFile.StepRecord) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + ::memset(&_impl_.column_, 0, static_cast( + reinterpret_cast(&_impl_.id_) - + reinterpret_cast(&_impl_.column_)) + sizeof(_impl_.id_)); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* MatrixFile_StepRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // uint32 column = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + _impl_.column_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 id = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string name = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.StepRecord.name")); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* MatrixFile_StepRecord::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.MatrixFile.StepRecord) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // uint32 column = 1; + if (this->_internal_column() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_column(), target); + } + + // uint32 id = 2; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(2, this->_internal_id(), target); + } + + // string name = 3; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.StepRecord.name"); + target = stream->WriteStringMaybeAliased( + 3, this->_internal_name(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.MatrixFile.StepRecord) + return target; +} + +size_t MatrixFile_StepRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.MatrixFile.StepRecord) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 3; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // uint32 column = 1; + if (this->_internal_column() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_column()); + } + + // uint32 id = 2; + if (this->_internal_id() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MatrixFile_StepRecord::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + MatrixFile_StepRecord::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MatrixFile_StepRecord::GetClassData() const { return &_class_data_; } + + +void MatrixFile_StepRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.MatrixFile.StepRecord) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_column() != 0) { + _this->_internal_set_column(from._internal_column()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void MatrixFile_StepRecord::CopyFrom(const MatrixFile_StepRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.MatrixFile.StepRecord) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool MatrixFile_StepRecord::IsInitialized() const { + return true; +} + +void MatrixFile_StepRecord::InternalSwap(MatrixFile_StepRecord* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(MatrixFile_StepRecord, _impl_.id_) + + sizeof(MatrixFile_StepRecord::_impl_.id_) + - PROTOBUF_FIELD_OFFSET(MatrixFile_StepRecord, _impl_.column_)>( + reinterpret_cast(&_impl_.column_), + reinterpret_cast(&other->_impl_.column_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata MatrixFile_StepRecord::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_matrixfile_2eproto_getter, &descriptor_table_matrixfile_2eproto_once, + file_level_metadata_matrixfile_2eproto[0]); +} + +// =================================================================== + +class MatrixFile_LayerRecord::_Internal { + public: +}; + +MatrixFile_LayerRecord::MatrixFile_LayerRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); + // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.MatrixFile.LayerRecord) +} +MatrixFile_LayerRecord::MatrixFile_LayerRecord(const MatrixFile_LayerRecord& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + MatrixFile_LayerRecord* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.dielectricname_){} + , decltype(_impl_.startname_){} + , decltype(_impl_.endname_){} + , decltype(_impl_.oldname_){} + , decltype(_impl_.addtype_){} + , decltype(_impl_.row_){} + , decltype(_impl_.context_){} + , decltype(_impl_.type_){} + , decltype(_impl_.polarity_){} + , decltype(_impl_.dielectrictype_){} + , decltype(_impl_.form_){} + , decltype(_impl_.cutop_){} + , decltype(_impl_.cubottom_){} + , decltype(_impl_.ref_){} + , decltype(_impl_.id_){} + , /*decltype(_impl_._cached_size_)*/{}}; + + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_name().empty()) { + _this->_impl_.name_.Set(from._internal_name(), + _this->GetArenaForAllocation()); + } + _impl_.dielectricname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.dielectricname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_dielectricname().empty()) { + _this->_impl_.dielectricname_.Set(from._internal_dielectricname(), + _this->GetArenaForAllocation()); + } + _impl_.startname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.startname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_startname().empty()) { + _this->_impl_.startname_.Set(from._internal_startname(), + _this->GetArenaForAllocation()); + } + _impl_.endname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.endname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_endname().empty()) { + _this->_impl_.endname_.Set(from._internal_endname(), + _this->GetArenaForAllocation()); + } + _impl_.oldname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.oldname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_oldname().empty()) { + _this->_impl_.oldname_.Set(from._internal_oldname(), + _this->GetArenaForAllocation()); + } + _impl_.addtype_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.addtype_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (!from._internal_addtype().empty()) { + _this->_impl_.addtype_.Set(from._internal_addtype(), + _this->GetArenaForAllocation()); + } + ::memcpy(&_impl_.row_, &from._impl_.row_, + static_cast(reinterpret_cast(&_impl_.id_) - + reinterpret_cast(&_impl_.row_)) + sizeof(_impl_.id_)); + // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.MatrixFile.LayerRecord) +} + +inline void MatrixFile_LayerRecord::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.name_){} + , decltype(_impl_.dielectricname_){} + , decltype(_impl_.startname_){} + , decltype(_impl_.endname_){} + , decltype(_impl_.oldname_){} + , decltype(_impl_.addtype_){} + , decltype(_impl_.row_){0u} + , decltype(_impl_.context_){0} + , decltype(_impl_.type_){0} + , decltype(_impl_.polarity_){0} + , decltype(_impl_.dielectrictype_){0} + , decltype(_impl_.form_){0} + , decltype(_impl_.cutop_){0u} + , decltype(_impl_.cubottom_){0u} + , decltype(_impl_.ref_){0u} + , decltype(_impl_.id_){0u} + , /*decltype(_impl_._cached_size_)*/{} + }; + _impl_.name_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.name_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.dielectricname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.dielectricname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.startname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.startname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.endname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.endname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.oldname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.oldname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.addtype_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.addtype_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +MatrixFile_LayerRecord::~MatrixFile_LayerRecord() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void MatrixFile_LayerRecord::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.name_.Destroy(); + _impl_.dielectricname_.Destroy(); + _impl_.startname_.Destroy(); + _impl_.endname_.Destroy(); + _impl_.oldname_.Destroy(); + _impl_.addtype_.Destroy(); +} + +void MatrixFile_LayerRecord::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void MatrixFile_LayerRecord::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + _impl_.dielectricname_.ClearToEmpty(); + _impl_.startname_.ClearToEmpty(); + _impl_.endname_.ClearToEmpty(); + _impl_.oldname_.ClearToEmpty(); + _impl_.addtype_.ClearToEmpty(); + ::memset(&_impl_.row_, 0, static_cast( + reinterpret_cast(&_impl_.id_) - + reinterpret_cast(&_impl_.row_)) + sizeof(_impl_.id_)); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* MatrixFile_LayerRecord::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // uint32 row = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 8)) { + _impl_.row_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Context context = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 16)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_context(static_cast<::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context>(val)); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Type type = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 24)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_type(static_cast<::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type>(val)); + } else + goto handle_unusual; + continue; + // string name = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + auto str = _internal_mutable_name(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.name")); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.Polarity polarity = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 40)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_polarity(static_cast<::Odb::Lib::Protobuf::Polarity>(val)); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.DielectricType dielectricType = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 48)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_dielectrictype(static_cast<::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType>(val)); + } else + goto handle_unusual; + continue; + // string dielectricName = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { + auto str = _internal_mutable_dielectricname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName")); + } else + goto handle_unusual; + continue; + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Form form = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 64)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_form(static_cast<::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form>(val)); + } else + goto handle_unusual; + continue; + // uint32 cuTop = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 72)) { + _impl_.cutop_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 cuBottom = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 80)) { + _impl_.cubottom_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // uint32 ref = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 88)) { + _impl_.ref_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // string startName = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 98)) { + auto str = _internal_mutable_startname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName")); + } else + goto handle_unusual; + continue; + // string endName = 13; + case 13: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 106)) { + auto str = _internal_mutable_endname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName")); + } else + goto handle_unusual; + continue; + // string oldName = 14; + case 14: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 114)) { + auto str = _internal_mutable_oldname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName")); + } else + goto handle_unusual; + continue; + // string addType = 15; + case 15: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 122)) { + auto str = _internal_mutable_addtype(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType")); + } else + goto handle_unusual; + continue; + // uint32 id = 17; + case 17: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 136)) { + _impl_.id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* MatrixFile_LayerRecord::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // uint32 row = 1; + if (this->_internal_row() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_row(), target); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Context context = 2; + if (this->_internal_context() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 2, this->_internal_context(), target); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Type type = 3; + if (this->_internal_type() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 3, this->_internal_type(), target); + } + + // string name = 4; + if (!this->_internal_name().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_name().data(), static_cast(this->_internal_name().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.name"); + target = stream->WriteStringMaybeAliased( + 4, this->_internal_name(), target); + } + + // .Odb.Lib.Protobuf.Polarity polarity = 5; + if (this->_internal_polarity() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 5, this->_internal_polarity(), target); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.DielectricType dielectricType = 6; + if (this->_internal_dielectrictype() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 6, this->_internal_dielectrictype(), target); + } + + // string dielectricName = 7; + if (!this->_internal_dielectricname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_dielectricname().data(), static_cast(this->_internal_dielectricname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName"); + target = stream->WriteStringMaybeAliased( + 7, this->_internal_dielectricname(), target); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Form form = 8; + if (this->_internal_form() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 8, this->_internal_form(), target); + } + + // uint32 cuTop = 9; + if (this->_internal_cutop() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(9, this->_internal_cutop(), target); + } + + // uint32 cuBottom = 10; + if (this->_internal_cubottom() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(10, this->_internal_cubottom(), target); + } + + // uint32 ref = 11; + if (this->_internal_ref() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(11, this->_internal_ref(), target); + } + + // string startName = 12; + if (!this->_internal_startname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_startname().data(), static_cast(this->_internal_startname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName"); + target = stream->WriteStringMaybeAliased( + 12, this->_internal_startname(), target); + } + + // string endName = 13; + if (!this->_internal_endname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_endname().data(), static_cast(this->_internal_endname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName"); + target = stream->WriteStringMaybeAliased( + 13, this->_internal_endname(), target); + } + + // string oldName = 14; + if (!this->_internal_oldname().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_oldname().data(), static_cast(this->_internal_oldname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName"); + target = stream->WriteStringMaybeAliased( + 14, this->_internal_oldname(), target); + } + + // string addType = 15; + if (!this->_internal_addtype().empty()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_addtype().data(), static_cast(this->_internal_addtype().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType"); + target = stream->WriteStringMaybeAliased( + 15, this->_internal_addtype(), target); + } + + // uint32 id = 17; + if (this->_internal_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(17, this->_internal_id(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + return target; +} + +size_t MatrixFile_LayerRecord::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 4; + if (!this->_internal_name().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_name()); + } + + // string dielectricName = 7; + if (!this->_internal_dielectricname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_dielectricname()); + } + + // string startName = 12; + if (!this->_internal_startname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_startname()); + } + + // string endName = 13; + if (!this->_internal_endname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_endname()); + } + + // string oldName = 14; + if (!this->_internal_oldname().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_oldname()); + } + + // string addType = 15; + if (!this->_internal_addtype().empty()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_addtype()); + } + + // uint32 row = 1; + if (this->_internal_row() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_row()); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Context context = 2; + if (this->_internal_context() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_context()); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Type type = 3; + if (this->_internal_type() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_type()); + } + + // .Odb.Lib.Protobuf.Polarity polarity = 5; + if (this->_internal_polarity() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_polarity()); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.DielectricType dielectricType = 6; + if (this->_internal_dielectrictype() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_dielectrictype()); + } + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Form form = 8; + if (this->_internal_form() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this->_internal_form()); + } + + // uint32 cuTop = 9; + if (this->_internal_cutop() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_cutop()); + } + + // uint32 cuBottom = 10; + if (this->_internal_cubottom() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_cubottom()); + } + + // uint32 ref = 11; + if (this->_internal_ref() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_ref()); + } + + // uint32 id = 17; + if (this->_internal_id() != 0) { + total_size += 2 + + ::_pbi::WireFormatLite::UInt32Size( + this->_internal_id()); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MatrixFile_LayerRecord::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + MatrixFile_LayerRecord::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MatrixFile_LayerRecord::GetClassData() const { return &_class_data_; } + + +void MatrixFile_LayerRecord::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (!from._internal_dielectricname().empty()) { + _this->_internal_set_dielectricname(from._internal_dielectricname()); + } + if (!from._internal_startname().empty()) { + _this->_internal_set_startname(from._internal_startname()); + } + if (!from._internal_endname().empty()) { + _this->_internal_set_endname(from._internal_endname()); + } + if (!from._internal_oldname().empty()) { + _this->_internal_set_oldname(from._internal_oldname()); + } + if (!from._internal_addtype().empty()) { + _this->_internal_set_addtype(from._internal_addtype()); + } + if (from._internal_row() != 0) { + _this->_internal_set_row(from._internal_row()); + } + if (from._internal_context() != 0) { + _this->_internal_set_context(from._internal_context()); + } + if (from._internal_type() != 0) { + _this->_internal_set_type(from._internal_type()); + } + if (from._internal_polarity() != 0) { + _this->_internal_set_polarity(from._internal_polarity()); + } + if (from._internal_dielectrictype() != 0) { + _this->_internal_set_dielectrictype(from._internal_dielectrictype()); + } + if (from._internal_form() != 0) { + _this->_internal_set_form(from._internal_form()); + } + if (from._internal_cutop() != 0) { + _this->_internal_set_cutop(from._internal_cutop()); + } + if (from._internal_cubottom() != 0) { + _this->_internal_set_cubottom(from._internal_cubottom()); + } + if (from._internal_ref() != 0) { + _this->_internal_set_ref(from._internal_ref()); + } + if (from._internal_id() != 0) { + _this->_internal_set_id(from._internal_id()); + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void MatrixFile_LayerRecord::CopyFrom(const MatrixFile_LayerRecord& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool MatrixFile_LayerRecord::IsInitialized() const { + return true; +} + +void MatrixFile_LayerRecord::InternalSwap(MatrixFile_LayerRecord* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.name_, lhs_arena, + &other->_impl_.name_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.dielectricname_, lhs_arena, + &other->_impl_.dielectricname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.startname_, lhs_arena, + &other->_impl_.startname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.endname_, lhs_arena, + &other->_impl_.endname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.oldname_, lhs_arena, + &other->_impl_.oldname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.addtype_, lhs_arena, + &other->_impl_.addtype_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(MatrixFile_LayerRecord, _impl_.id_) + + sizeof(MatrixFile_LayerRecord::_impl_.id_) + - PROTOBUF_FIELD_OFFSET(MatrixFile_LayerRecord, _impl_.row_)>( + reinterpret_cast(&_impl_.row_), + reinterpret_cast(&other->_impl_.row_)); +} + +::PROTOBUF_NAMESPACE_ID::Metadata MatrixFile_LayerRecord::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_matrixfile_2eproto_getter, &descriptor_table_matrixfile_2eproto_once, + file_level_metadata_matrixfile_2eproto[1]); +} // =================================================================== @@ -88,36 +1292,215 @@ class MatrixFile::_Internal { MatrixFile::MatrixFile(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.MatrixFile) } MatrixFile::MatrixFile(const MatrixFile& from) - : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() { + : ::PROTOBUF_NAMESPACE_ID::Message() { MatrixFile* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_.steps_){from._impl_.steps_} + , decltype(_impl_.layers_){from._impl_.layers_} + , /*decltype(_impl_._cached_size_)*/{}}; + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.MatrixFile) } +inline void MatrixFile::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_.steps_){arena} + , decltype(_impl_.layers_){arena} + , /*decltype(_impl_._cached_size_)*/{} + }; +} + +MatrixFile::~MatrixFile() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.MatrixFile) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void MatrixFile::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.steps_.~RepeatedPtrField(); + _impl_.layers_.~RepeatedPtrField(); +} + +void MatrixFile::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void MatrixFile::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.MatrixFile) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.steps_.Clear(); + _impl_.layers_.Clear(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* MatrixFile::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // repeated .Odb.Lib.Protobuf.MatrixFile.StepRecord steps = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_steps(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .Odb.Lib.Protobuf.MatrixFile.LayerRecord layers = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_layers(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* MatrixFile::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.MatrixFile) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // repeated .Odb.Lib.Protobuf.MatrixFile.StepRecord steps = 1; + for (unsigned i = 0, + n = static_cast(this->_internal_steps_size()); i < n; i++) { + const auto& repfield = this->_internal_steps(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, repfield, repfield.GetCachedSize(), target, stream); + } + + // repeated .Odb.Lib.Protobuf.MatrixFile.LayerRecord layers = 2; + for (unsigned i = 0, + n = static_cast(this->_internal_layers_size()); i < n; i++) { + const auto& repfield = this->_internal_layers(i); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(2, repfield, repfield.GetCachedSize(), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.MatrixFile) + return target; +} + +size_t MatrixFile::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.MatrixFile) + size_t total_size = 0; + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + // repeated .Odb.Lib.Protobuf.MatrixFile.StepRecord steps = 1; + total_size += 1UL * this->_internal_steps_size(); + for (const auto& msg : this->_impl_.steps_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + // repeated .Odb.Lib.Protobuf.MatrixFile.LayerRecord layers = 2; + total_size += 1UL * this->_internal_layers_size(); + for (const auto& msg : this->_impl_.layers_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MatrixFile::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl, - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl, + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + MatrixFile::MergeImpl }; const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MatrixFile::GetClassData() const { return &_class_data_; } +void MatrixFile::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.MatrixFile) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + _this->_impl_.steps_.MergeFrom(from._impl_.steps_); + _this->_impl_.layers_.MergeFrom(from._impl_.layers_); + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} +void MatrixFile::CopyFrom(const MatrixFile& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.MatrixFile) + if (&from == this) return; + Clear(); + MergeFrom(from); +} +bool MatrixFile::IsInitialized() const { + return true; +} +void MatrixFile::InternalSwap(MatrixFile* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.steps_.InternalSwap(&other->_impl_.steps_); + _impl_.layers_.InternalSwap(&other->_impl_.layers_); +} ::PROTOBUF_NAMESPACE_ID::Metadata MatrixFile::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_matrixfile_2eproto_getter, &descriptor_table_matrixfile_2eproto_once, - file_level_metadata_matrixfile_2eproto[0]); + file_level_metadata_matrixfile_2eproto[2]); } // @@protoc_insertion_point(namespace_scope) @@ -125,6 +1508,14 @@ ::PROTOBUF_NAMESPACE_ID::Metadata MatrixFile::GetMetadata() const { } // namespace Lib } // namespace Odb PROTOBUF_NAMESPACE_OPEN +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::MatrixFile_StepRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >(arena); +} +template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* +Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >(Arena* arena) { + return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >(arena); +} template<> PROTOBUF_NOINLINE ::Odb::Lib::Protobuf::MatrixFile* Arena::CreateMaybeMessage< ::Odb::Lib::Protobuf::MatrixFile >(Arena* arena) { return Arena::CreateMessageInternal< ::Odb::Lib::Protobuf::MatrixFile >(arena); diff --git a/OdbDesignLib/ProtoBuf/matrixfile.pb.h b/OdbDesignLib/ProtoBuf/matrixfile.pb.h index fa9e2e8e..a13b00f1 100644 --- a/OdbDesignLib/ProtoBuf/matrixfile.pb.h +++ b/OdbDesignLib/ProtoBuf/matrixfile.pb.h @@ -23,14 +23,15 @@ #include #include #include -#include #include #include #include #include #include // IWYU pragma: export #include // IWYU pragma: export +#include #include +#include "enums.pb.h" // @@protoc_insertion_point(includes) #include #define PROTOBUF_INTERNAL_EXPORT_matrixfile_2eproto @@ -51,22 +52,805 @@ namespace Protobuf { class MatrixFile; struct MatrixFileDefaultTypeInternal; extern MatrixFileDefaultTypeInternal _MatrixFile_default_instance_; +class MatrixFile_LayerRecord; +struct MatrixFile_LayerRecordDefaultTypeInternal; +extern MatrixFile_LayerRecordDefaultTypeInternal _MatrixFile_LayerRecord_default_instance_; +class MatrixFile_StepRecord; +struct MatrixFile_StepRecordDefaultTypeInternal; +extern MatrixFile_StepRecordDefaultTypeInternal _MatrixFile_StepRecord_default_instance_; } // namespace Protobuf } // namespace Lib } // namespace Odb PROTOBUF_NAMESPACE_OPEN template<> ::Odb::Lib::Protobuf::MatrixFile* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::MatrixFile>(Arena*); +template<> ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::MatrixFile_LayerRecord>(Arena*); +template<> ::Odb::Lib::Protobuf::MatrixFile_StepRecord* Arena::CreateMaybeMessage<::Odb::Lib::Protobuf::MatrixFile_StepRecord>(Arena*); PROTOBUF_NAMESPACE_CLOSE namespace Odb { namespace Lib { namespace Protobuf { +enum MatrixFile_LayerRecord_Type : int { + MatrixFile_LayerRecord_Type_Signal = 0, + MatrixFile_LayerRecord_Type_PowerGround = 1, + MatrixFile_LayerRecord_Type_Dielectric = 2, + MatrixFile_LayerRecord_Type_Mixed = 3, + MatrixFile_LayerRecord_Type_SolderMask = 4, + MatrixFile_LayerRecord_Type_SolderPaste = 5, + MatrixFile_LayerRecord_Type_SilkScreen = 6, + MatrixFile_LayerRecord_Type_Drill = 7, + MatrixFile_LayerRecord_Type_Rout = 8, + MatrixFile_LayerRecord_Type_Document = 9, + MatrixFile_LayerRecord_Type_Component = 10, + MatrixFile_LayerRecord_Type_Mask = 11, + MatrixFile_LayerRecord_Type_ConductivePaste = 12, + MatrixFile_LayerRecord_Type_MatrixFile_LayerRecord_Type_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + MatrixFile_LayerRecord_Type_MatrixFile_LayerRecord_Type_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool MatrixFile_LayerRecord_Type_IsValid(int value); +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord_Type_Type_MIN = MatrixFile_LayerRecord_Type_Signal; +constexpr MatrixFile_LayerRecord_Type MatrixFile_LayerRecord_Type_Type_MAX = MatrixFile_LayerRecord_Type_ConductivePaste; +constexpr int MatrixFile_LayerRecord_Type_Type_ARRAYSIZE = MatrixFile_LayerRecord_Type_Type_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Type_descriptor(); +template +inline const std::string& MatrixFile_LayerRecord_Type_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function MatrixFile_LayerRecord_Type_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + MatrixFile_LayerRecord_Type_descriptor(), enum_t_value); +} +inline bool MatrixFile_LayerRecord_Type_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MatrixFile_LayerRecord_Type* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + MatrixFile_LayerRecord_Type_descriptor(), name, value); +} +enum MatrixFile_LayerRecord_Context : int { + MatrixFile_LayerRecord_Context_Board = 0, + MatrixFile_LayerRecord_Context_Misc = 1, + MatrixFile_LayerRecord_Context_MatrixFile_LayerRecord_Context_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + MatrixFile_LayerRecord_Context_MatrixFile_LayerRecord_Context_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool MatrixFile_LayerRecord_Context_IsValid(int value); +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord_Context_Context_MIN = MatrixFile_LayerRecord_Context_Board; +constexpr MatrixFile_LayerRecord_Context MatrixFile_LayerRecord_Context_Context_MAX = MatrixFile_LayerRecord_Context_Misc; +constexpr int MatrixFile_LayerRecord_Context_Context_ARRAYSIZE = MatrixFile_LayerRecord_Context_Context_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Context_descriptor(); +template +inline const std::string& MatrixFile_LayerRecord_Context_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function MatrixFile_LayerRecord_Context_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + MatrixFile_LayerRecord_Context_descriptor(), enum_t_value); +} +inline bool MatrixFile_LayerRecord_Context_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MatrixFile_LayerRecord_Context* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + MatrixFile_LayerRecord_Context_descriptor(), name, value); +} +enum MatrixFile_LayerRecord_DielectricType : int { + MatrixFile_LayerRecord_DielectricType_None = 0, + MatrixFile_LayerRecord_DielectricType_Prepreg = 1, + MatrixFile_LayerRecord_DielectricType_Core = 2, + MatrixFile_LayerRecord_DielectricType_MatrixFile_LayerRecord_DielectricType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + MatrixFile_LayerRecord_DielectricType_MatrixFile_LayerRecord_DielectricType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool MatrixFile_LayerRecord_DielectricType_IsValid(int value); +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord_DielectricType_DielectricType_MIN = MatrixFile_LayerRecord_DielectricType_None; +constexpr MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord_DielectricType_DielectricType_MAX = MatrixFile_LayerRecord_DielectricType_Core; +constexpr int MatrixFile_LayerRecord_DielectricType_DielectricType_ARRAYSIZE = MatrixFile_LayerRecord_DielectricType_DielectricType_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_DielectricType_descriptor(); +template +inline const std::string& MatrixFile_LayerRecord_DielectricType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function MatrixFile_LayerRecord_DielectricType_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + MatrixFile_LayerRecord_DielectricType_descriptor(), enum_t_value); +} +inline bool MatrixFile_LayerRecord_DielectricType_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MatrixFile_LayerRecord_DielectricType* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + MatrixFile_LayerRecord_DielectricType_descriptor(), name, value); +} +enum MatrixFile_LayerRecord_Form : int { + MatrixFile_LayerRecord_Form_Rigid = 0, + MatrixFile_LayerRecord_Form_Flex = 1, + MatrixFile_LayerRecord_Form_MatrixFile_LayerRecord_Form_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits::min(), + MatrixFile_LayerRecord_Form_MatrixFile_LayerRecord_Form_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits::max() +}; +bool MatrixFile_LayerRecord_Form_IsValid(int value); +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord_Form_Form_MIN = MatrixFile_LayerRecord_Form_Rigid; +constexpr MatrixFile_LayerRecord_Form MatrixFile_LayerRecord_Form_Form_MAX = MatrixFile_LayerRecord_Form_Flex; +constexpr int MatrixFile_LayerRecord_Form_Form_ARRAYSIZE = MatrixFile_LayerRecord_Form_Form_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MatrixFile_LayerRecord_Form_descriptor(); +template +inline const std::string& MatrixFile_LayerRecord_Form_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function MatrixFile_LayerRecord_Form_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + MatrixFile_LayerRecord_Form_descriptor(), enum_t_value); +} +inline bool MatrixFile_LayerRecord_Form_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, MatrixFile_LayerRecord_Form* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum( + MatrixFile_LayerRecord_Form_descriptor(), name, value); +} // =================================================================== +class MatrixFile_StepRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MatrixFile.StepRecord) */ { + public: + inline MatrixFile_StepRecord() : MatrixFile_StepRecord(nullptr) {} + ~MatrixFile_StepRecord() override; + explicit PROTOBUF_CONSTEXPR MatrixFile_StepRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MatrixFile_StepRecord(const MatrixFile_StepRecord& from); + MatrixFile_StepRecord(MatrixFile_StepRecord&& from) noexcept + : MatrixFile_StepRecord() { + *this = ::std::move(from); + } + + inline MatrixFile_StepRecord& operator=(const MatrixFile_StepRecord& from) { + CopyFrom(from); + return *this; + } + inline MatrixFile_StepRecord& operator=(MatrixFile_StepRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MatrixFile_StepRecord& default_instance() { + return *internal_default_instance(); + } + static inline const MatrixFile_StepRecord* internal_default_instance() { + return reinterpret_cast( + &_MatrixFile_StepRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + friend void swap(MatrixFile_StepRecord& a, MatrixFile_StepRecord& b) { + a.Swap(&b); + } + inline void Swap(MatrixFile_StepRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MatrixFile_StepRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + MatrixFile_StepRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MatrixFile_StepRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const MatrixFile_StepRecord& from) { + MatrixFile_StepRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MatrixFile_StepRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.MatrixFile.StepRecord"; + } + protected: + explicit MatrixFile_StepRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 3, + kColumnFieldNumber = 1, + kIdFieldNumber = 2, + }; + // string name = 3; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // uint32 column = 1; + void clear_column(); + uint32_t column() const; + void set_column(uint32_t value); + private: + uint32_t _internal_column() const; + void _internal_set_column(uint32_t value); + public: + + // uint32 id = 2; + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.MatrixFile.StepRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + uint32_t column_; + uint32_t id_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_matrixfile_2eproto; +}; +// ------------------------------------------------------------------- + +class MatrixFile_LayerRecord final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MatrixFile.LayerRecord) */ { + public: + inline MatrixFile_LayerRecord() : MatrixFile_LayerRecord(nullptr) {} + ~MatrixFile_LayerRecord() override; + explicit PROTOBUF_CONSTEXPR MatrixFile_LayerRecord(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + MatrixFile_LayerRecord(const MatrixFile_LayerRecord& from); + MatrixFile_LayerRecord(MatrixFile_LayerRecord&& from) noexcept + : MatrixFile_LayerRecord() { + *this = ::std::move(from); + } + + inline MatrixFile_LayerRecord& operator=(const MatrixFile_LayerRecord& from) { + CopyFrom(from); + return *this; + } + inline MatrixFile_LayerRecord& operator=(MatrixFile_LayerRecord&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const MatrixFile_LayerRecord& default_instance() { + return *internal_default_instance(); + } + static inline const MatrixFile_LayerRecord* internal_default_instance() { + return reinterpret_cast( + &_MatrixFile_LayerRecord_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + friend void swap(MatrixFile_LayerRecord& a, MatrixFile_LayerRecord& b) { + a.Swap(&b); + } + inline void Swap(MatrixFile_LayerRecord* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(MatrixFile_LayerRecord* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + MatrixFile_LayerRecord* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MatrixFile_LayerRecord& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const MatrixFile_LayerRecord& from) { + MatrixFile_LayerRecord::MergeImpl(*this, from); + } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MatrixFile_LayerRecord* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "Odb.Lib.Protobuf.MatrixFile.LayerRecord"; + } + protected: + explicit MatrixFile_LayerRecord(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef MatrixFile_LayerRecord_Type Type; + static constexpr Type Signal = + MatrixFile_LayerRecord_Type_Signal; + static constexpr Type PowerGround = + MatrixFile_LayerRecord_Type_PowerGround; + static constexpr Type Dielectric = + MatrixFile_LayerRecord_Type_Dielectric; + static constexpr Type Mixed = + MatrixFile_LayerRecord_Type_Mixed; + static constexpr Type SolderMask = + MatrixFile_LayerRecord_Type_SolderMask; + static constexpr Type SolderPaste = + MatrixFile_LayerRecord_Type_SolderPaste; + static constexpr Type SilkScreen = + MatrixFile_LayerRecord_Type_SilkScreen; + static constexpr Type Drill = + MatrixFile_LayerRecord_Type_Drill; + static constexpr Type Rout = + MatrixFile_LayerRecord_Type_Rout; + static constexpr Type Document = + MatrixFile_LayerRecord_Type_Document; + static constexpr Type Component = + MatrixFile_LayerRecord_Type_Component; + static constexpr Type Mask = + MatrixFile_LayerRecord_Type_Mask; + static constexpr Type ConductivePaste = + MatrixFile_LayerRecord_Type_ConductivePaste; + static inline bool Type_IsValid(int value) { + return MatrixFile_LayerRecord_Type_IsValid(value); + } + static constexpr Type Type_MIN = + MatrixFile_LayerRecord_Type_Type_MIN; + static constexpr Type Type_MAX = + MatrixFile_LayerRecord_Type_Type_MAX; + static constexpr int Type_ARRAYSIZE = + MatrixFile_LayerRecord_Type_Type_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Type_descriptor() { + return MatrixFile_LayerRecord_Type_descriptor(); + } + template + static inline const std::string& Type_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Type_Name."); + return MatrixFile_LayerRecord_Type_Name(enum_t_value); + } + static inline bool Type_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Type* value) { + return MatrixFile_LayerRecord_Type_Parse(name, value); + } + + typedef MatrixFile_LayerRecord_Context Context; + static constexpr Context Board = + MatrixFile_LayerRecord_Context_Board; + static constexpr Context Misc = + MatrixFile_LayerRecord_Context_Misc; + static inline bool Context_IsValid(int value) { + return MatrixFile_LayerRecord_Context_IsValid(value); + } + static constexpr Context Context_MIN = + MatrixFile_LayerRecord_Context_Context_MIN; + static constexpr Context Context_MAX = + MatrixFile_LayerRecord_Context_Context_MAX; + static constexpr int Context_ARRAYSIZE = + MatrixFile_LayerRecord_Context_Context_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Context_descriptor() { + return MatrixFile_LayerRecord_Context_descriptor(); + } + template + static inline const std::string& Context_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Context_Name."); + return MatrixFile_LayerRecord_Context_Name(enum_t_value); + } + static inline bool Context_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Context* value) { + return MatrixFile_LayerRecord_Context_Parse(name, value); + } + + typedef MatrixFile_LayerRecord_DielectricType DielectricType; + static constexpr DielectricType None = + MatrixFile_LayerRecord_DielectricType_None; + static constexpr DielectricType Prepreg = + MatrixFile_LayerRecord_DielectricType_Prepreg; + static constexpr DielectricType Core = + MatrixFile_LayerRecord_DielectricType_Core; + static inline bool DielectricType_IsValid(int value) { + return MatrixFile_LayerRecord_DielectricType_IsValid(value); + } + static constexpr DielectricType DielectricType_MIN = + MatrixFile_LayerRecord_DielectricType_DielectricType_MIN; + static constexpr DielectricType DielectricType_MAX = + MatrixFile_LayerRecord_DielectricType_DielectricType_MAX; + static constexpr int DielectricType_ARRAYSIZE = + MatrixFile_LayerRecord_DielectricType_DielectricType_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + DielectricType_descriptor() { + return MatrixFile_LayerRecord_DielectricType_descriptor(); + } + template + static inline const std::string& DielectricType_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function DielectricType_Name."); + return MatrixFile_LayerRecord_DielectricType_Name(enum_t_value); + } + static inline bool DielectricType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + DielectricType* value) { + return MatrixFile_LayerRecord_DielectricType_Parse(name, value); + } + + typedef MatrixFile_LayerRecord_Form Form; + static constexpr Form Rigid = + MatrixFile_LayerRecord_Form_Rigid; + static constexpr Form Flex = + MatrixFile_LayerRecord_Form_Flex; + static inline bool Form_IsValid(int value) { + return MatrixFile_LayerRecord_Form_IsValid(value); + } + static constexpr Form Form_MIN = + MatrixFile_LayerRecord_Form_Form_MIN; + static constexpr Form Form_MAX = + MatrixFile_LayerRecord_Form_Form_MAX; + static constexpr int Form_ARRAYSIZE = + MatrixFile_LayerRecord_Form_Form_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + Form_descriptor() { + return MatrixFile_LayerRecord_Form_descriptor(); + } + template + static inline const std::string& Form_Name(T enum_t_value) { + static_assert(::std::is_same::value || + ::std::is_integral::value, + "Incorrect type passed to function Form_Name."); + return MatrixFile_LayerRecord_Form_Name(enum_t_value); + } + static inline bool Form_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + Form* value) { + return MatrixFile_LayerRecord_Form_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + enum : int { + kNameFieldNumber = 4, + kDielectricNameFieldNumber = 7, + kStartNameFieldNumber = 12, + kEndNameFieldNumber = 13, + kOldNameFieldNumber = 14, + kAddTypeFieldNumber = 15, + kRowFieldNumber = 1, + kContextFieldNumber = 2, + kTypeFieldNumber = 3, + kPolarityFieldNumber = 5, + kDielectricTypeFieldNumber = 6, + kFormFieldNumber = 8, + kCuTopFieldNumber = 9, + kCuBottomFieldNumber = 10, + kRefFieldNumber = 11, + kIdFieldNumber = 17, + }; + // string name = 4; + void clear_name(); + const std::string& name() const; + template + void set_name(ArgT0&& arg0, ArgT... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* name); + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name(const std::string& value); + std::string* _internal_mutable_name(); + public: + + // string dielectricName = 7; + void clear_dielectricname(); + const std::string& dielectricname() const; + template + void set_dielectricname(ArgT0&& arg0, ArgT... args); + std::string* mutable_dielectricname(); + PROTOBUF_NODISCARD std::string* release_dielectricname(); + void set_allocated_dielectricname(std::string* dielectricname); + private: + const std::string& _internal_dielectricname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_dielectricname(const std::string& value); + std::string* _internal_mutable_dielectricname(); + public: + + // string startName = 12; + void clear_startname(); + const std::string& startname() const; + template + void set_startname(ArgT0&& arg0, ArgT... args); + std::string* mutable_startname(); + PROTOBUF_NODISCARD std::string* release_startname(); + void set_allocated_startname(std::string* startname); + private: + const std::string& _internal_startname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_startname(const std::string& value); + std::string* _internal_mutable_startname(); + public: + + // string endName = 13; + void clear_endname(); + const std::string& endname() const; + template + void set_endname(ArgT0&& arg0, ArgT... args); + std::string* mutable_endname(); + PROTOBUF_NODISCARD std::string* release_endname(); + void set_allocated_endname(std::string* endname); + private: + const std::string& _internal_endname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_endname(const std::string& value); + std::string* _internal_mutable_endname(); + public: + + // string oldName = 14; + void clear_oldname(); + const std::string& oldname() const; + template + void set_oldname(ArgT0&& arg0, ArgT... args); + std::string* mutable_oldname(); + PROTOBUF_NODISCARD std::string* release_oldname(); + void set_allocated_oldname(std::string* oldname); + private: + const std::string& _internal_oldname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_oldname(const std::string& value); + std::string* _internal_mutable_oldname(); + public: + + // string addType = 15; + void clear_addtype(); + const std::string& addtype() const; + template + void set_addtype(ArgT0&& arg0, ArgT... args); + std::string* mutable_addtype(); + PROTOBUF_NODISCARD std::string* release_addtype(); + void set_allocated_addtype(std::string* addtype); + private: + const std::string& _internal_addtype() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_addtype(const std::string& value); + std::string* _internal_mutable_addtype(); + public: + + // uint32 row = 1; + void clear_row(); + uint32_t row() const; + void set_row(uint32_t value); + private: + uint32_t _internal_row() const; + void _internal_set_row(uint32_t value); + public: + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Context context = 2; + void clear_context(); + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context context() const; + void set_context(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context value); + private: + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context _internal_context() const; + void _internal_set_context(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context value); + public: + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Type type = 3; + void clear_type(); + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type type() const; + void set_type(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type value); + private: + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type _internal_type() const; + void _internal_set_type(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type value); + public: + + // .Odb.Lib.Protobuf.Polarity polarity = 5; + void clear_polarity(); + ::Odb::Lib::Protobuf::Polarity polarity() const; + void set_polarity(::Odb::Lib::Protobuf::Polarity value); + private: + ::Odb::Lib::Protobuf::Polarity _internal_polarity() const; + void _internal_set_polarity(::Odb::Lib::Protobuf::Polarity value); + public: + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.DielectricType dielectricType = 6; + void clear_dielectrictype(); + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType dielectrictype() const; + void set_dielectrictype(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType value); + private: + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType _internal_dielectrictype() const; + void _internal_set_dielectrictype(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType value); + public: + + // .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Form form = 8; + void clear_form(); + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form form() const; + void set_form(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form value); + private: + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form _internal_form() const; + void _internal_set_form(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form value); + public: + + // uint32 cuTop = 9; + void clear_cutop(); + uint32_t cutop() const; + void set_cutop(uint32_t value); + private: + uint32_t _internal_cutop() const; + void _internal_set_cutop(uint32_t value); + public: + + // uint32 cuBottom = 10; + void clear_cubottom(); + uint32_t cubottom() const; + void set_cubottom(uint32_t value); + private: + uint32_t _internal_cubottom() const; + void _internal_set_cubottom(uint32_t value); + public: + + // uint32 ref = 11; + void clear_ref(); + uint32_t ref() const; + void set_ref(uint32_t value); + private: + uint32_t _internal_ref() const; + void _internal_set_ref(uint32_t value); + public: + + // uint32 id = 17; + void clear_id(); + uint32_t id() const; + void set_id(uint32_t value); + private: + uint32_t _internal_id() const; + void _internal_set_id(uint32_t value); + public: + + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.MatrixFile.LayerRecord) + private: + class _Internal; + + template friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr dielectricname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr startname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr endname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr oldname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr addtype_; + uint32_t row_; + int context_; + int type_; + int polarity_; + int dielectrictype_; + int form_; + uint32_t cutop_; + uint32_t cubottom_; + uint32_t ref_; + uint32_t id_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_matrixfile_2eproto; +}; +// ------------------------------------------------------------------- + class MatrixFile final : - public ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MatrixFile) */ { + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MatrixFile) */ { public: inline MatrixFile() : MatrixFile(nullptr) {} + ~MatrixFile() override; explicit PROTOBUF_CONSTEXPR MatrixFile(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); MatrixFile(const MatrixFile& from); @@ -110,7 +894,7 @@ class MatrixFile final : &_MatrixFile_default_instance_); } static constexpr int kIndexInFileMessages = - 0; + 2; friend void swap(MatrixFile& a, MatrixFile& b) { a.Swap(&b); @@ -139,15 +923,29 @@ class MatrixFile final : MatrixFile* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyFrom; - inline void CopyFrom(const MatrixFile& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl(*this, from); - } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeFrom; - void MergeFrom(const MatrixFile& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl(*this, from); + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MatrixFile& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const MatrixFile& from) { + MatrixFile::MergeImpl(*this, from); } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MatrixFile* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; @@ -166,8 +964,51 @@ class MatrixFile final : // nested types ---------------------------------------------------- + typedef MatrixFile_StepRecord StepRecord; + typedef MatrixFile_LayerRecord LayerRecord; + // accessors ------------------------------------------------------- + enum : int { + kStepsFieldNumber = 1, + kLayersFieldNumber = 2, + }; + // repeated .Odb.Lib.Protobuf.MatrixFile.StepRecord steps = 1; + int steps_size() const; + private: + int _internal_steps_size() const; + public: + void clear_steps(); + ::Odb::Lib::Protobuf::MatrixFile_StepRecord* mutable_steps(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >* + mutable_steps(); + private: + const ::Odb::Lib::Protobuf::MatrixFile_StepRecord& _internal_steps(int index) const; + ::Odb::Lib::Protobuf::MatrixFile_StepRecord* _internal_add_steps(); + public: + const ::Odb::Lib::Protobuf::MatrixFile_StepRecord& steps(int index) const; + ::Odb::Lib::Protobuf::MatrixFile_StepRecord* add_steps(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >& + steps() const; + + // repeated .Odb.Lib.Protobuf.MatrixFile.LayerRecord layers = 2; + int layers_size() const; + private: + int _internal_layers_size() const; + public: + void clear_layers(); + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* mutable_layers(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >* + mutable_layers(); + private: + const ::Odb::Lib::Protobuf::MatrixFile_LayerRecord& _internal_layers(int index) const; + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* _internal_add_layers(); + public: + const ::Odb::Lib::Protobuf::MatrixFile_LayerRecord& layers(int index) const; + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* add_layers(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >& + layers() const; + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.MatrixFile) private: class _Internal; @@ -176,7 +1017,11 @@ class MatrixFile final : typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_StepRecord > steps_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord > layers_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; }; + union { Impl_ _impl_; }; friend struct ::TableStruct_matrixfile_2eproto; }; // =================================================================== @@ -188,11 +1033,693 @@ class MatrixFile final : #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wstrict-aliasing" #endif // __GNUC__ +// MatrixFile_StepRecord + +// uint32 column = 1; +inline void MatrixFile_StepRecord::clear_column() { + _impl_.column_ = 0u; +} +inline uint32_t MatrixFile_StepRecord::_internal_column() const { + return _impl_.column_; +} +inline uint32_t MatrixFile_StepRecord::column() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.StepRecord.column) + return _internal_column(); +} +inline void MatrixFile_StepRecord::_internal_set_column(uint32_t value) { + + _impl_.column_ = value; +} +inline void MatrixFile_StepRecord::set_column(uint32_t value) { + _internal_set_column(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.StepRecord.column) +} + +// uint32 id = 2; +inline void MatrixFile_StepRecord::clear_id() { + _impl_.id_ = 0u; +} +inline uint32_t MatrixFile_StepRecord::_internal_id() const { + return _impl_.id_; +} +inline uint32_t MatrixFile_StepRecord::id() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.StepRecord.id) + return _internal_id(); +} +inline void MatrixFile_StepRecord::_internal_set_id(uint32_t value) { + + _impl_.id_ = value; +} +inline void MatrixFile_StepRecord::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.StepRecord.id) +} + +// string name = 3; +inline void MatrixFile_StepRecord::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& MatrixFile_StepRecord::name() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.StepRecord.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_StepRecord::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.StepRecord.name) +} +inline std::string* MatrixFile_StepRecord::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.StepRecord.name) + return _s; +} +inline const std::string& MatrixFile_StepRecord::_internal_name() const { + return _impl_.name_.Get(); +} +inline void MatrixFile_StepRecord::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_StepRecord::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_StepRecord::release_name() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.StepRecord.name) + return _impl_.name_.Release(); +} +inline void MatrixFile_StepRecord::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.StepRecord.name) +} + +// ------------------------------------------------------------------- + +// MatrixFile_LayerRecord + +// uint32 row = 1; +inline void MatrixFile_LayerRecord::clear_row() { + _impl_.row_ = 0u; +} +inline uint32_t MatrixFile_LayerRecord::_internal_row() const { + return _impl_.row_; +} +inline uint32_t MatrixFile_LayerRecord::row() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.row) + return _internal_row(); +} +inline void MatrixFile_LayerRecord::_internal_set_row(uint32_t value) { + + _impl_.row_ = value; +} +inline void MatrixFile_LayerRecord::set_row(uint32_t value) { + _internal_set_row(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.row) +} + +// .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Context context = 2; +inline void MatrixFile_LayerRecord::clear_context() { + _impl_.context_ = 0; +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::_internal_context() const { + return static_cast< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context >(_impl_.context_); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context MatrixFile_LayerRecord::context() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.context) + return _internal_context(); +} +inline void MatrixFile_LayerRecord::_internal_set_context(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context value) { + + _impl_.context_ = value; +} +inline void MatrixFile_LayerRecord::set_context(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context value) { + _internal_set_context(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.context) +} + +// .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Type type = 3; +inline void MatrixFile_LayerRecord::clear_type() { + _impl_.type_ = 0; +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::_internal_type() const { + return static_cast< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type >(_impl_.type_); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type MatrixFile_LayerRecord::type() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.type) + return _internal_type(); +} +inline void MatrixFile_LayerRecord::_internal_set_type(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type value) { + + _impl_.type_ = value; +} +inline void MatrixFile_LayerRecord::set_type(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.type) +} + +// string name = 4; +inline void MatrixFile_LayerRecord::clear_name() { + _impl_.name_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::name() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_name(ArgT0&& arg0, ArgT... args) { + + _impl_.name_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.name) +} +inline std::string* MatrixFile_LayerRecord::mutable_name() { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.name) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_name() const { + return _impl_.name_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_name(const std::string& value) { + + _impl_.name_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_name() { + + return _impl_.name_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_name() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.name) + return _impl_.name_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_name(std::string* name) { + if (name != nullptr) { + + } else { + + } + _impl_.name_.SetAllocated(name, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.name) +} + +// .Odb.Lib.Protobuf.Polarity polarity = 5; +inline void MatrixFile_LayerRecord::clear_polarity() { + _impl_.polarity_ = 0; +} +inline ::Odb::Lib::Protobuf::Polarity MatrixFile_LayerRecord::_internal_polarity() const { + return static_cast< ::Odb::Lib::Protobuf::Polarity >(_impl_.polarity_); +} +inline ::Odb::Lib::Protobuf::Polarity MatrixFile_LayerRecord::polarity() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.polarity) + return _internal_polarity(); +} +inline void MatrixFile_LayerRecord::_internal_set_polarity(::Odb::Lib::Protobuf::Polarity value) { + + _impl_.polarity_ = value; +} +inline void MatrixFile_LayerRecord::set_polarity(::Odb::Lib::Protobuf::Polarity value) { + _internal_set_polarity(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.polarity) +} + +// .Odb.Lib.Protobuf.MatrixFile.LayerRecord.DielectricType dielectricType = 6; +inline void MatrixFile_LayerRecord::clear_dielectrictype() { + _impl_.dielectrictype_ = 0; +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::_internal_dielectrictype() const { + return static_cast< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType >(_impl_.dielectrictype_); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType MatrixFile_LayerRecord::dielectrictype() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricType) + return _internal_dielectrictype(); +} +inline void MatrixFile_LayerRecord::_internal_set_dielectrictype(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType value) { + + _impl_.dielectrictype_ = value; +} +inline void MatrixFile_LayerRecord::set_dielectrictype(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType value) { + _internal_set_dielectrictype(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricType) +} + +// string dielectricName = 7; +inline void MatrixFile_LayerRecord::clear_dielectricname() { + _impl_.dielectricname_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::dielectricname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName) + return _internal_dielectricname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_dielectricname(ArgT0&& arg0, ArgT... args) { + + _impl_.dielectricname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName) +} +inline std::string* MatrixFile_LayerRecord::mutable_dielectricname() { + std::string* _s = _internal_mutable_dielectricname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_dielectricname() const { + return _impl_.dielectricname_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_dielectricname(const std::string& value) { + + _impl_.dielectricname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_dielectricname() { + + return _impl_.dielectricname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_dielectricname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName) + return _impl_.dielectricname_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_dielectricname(std::string* dielectricname) { + if (dielectricname != nullptr) { + + } else { + + } + _impl_.dielectricname_.SetAllocated(dielectricname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.dielectricname_.IsDefault()) { + _impl_.dielectricname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.dielectricName) +} + +// .Odb.Lib.Protobuf.MatrixFile.LayerRecord.Form form = 8; +inline void MatrixFile_LayerRecord::clear_form() { + _impl_.form_ = 0; +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::_internal_form() const { + return static_cast< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form >(_impl_.form_); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form MatrixFile_LayerRecord::form() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.form) + return _internal_form(); +} +inline void MatrixFile_LayerRecord::_internal_set_form(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form value) { + + _impl_.form_ = value; +} +inline void MatrixFile_LayerRecord::set_form(::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form value) { + _internal_set_form(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.form) +} + +// uint32 cuTop = 9; +inline void MatrixFile_LayerRecord::clear_cutop() { + _impl_.cutop_ = 0u; +} +inline uint32_t MatrixFile_LayerRecord::_internal_cutop() const { + return _impl_.cutop_; +} +inline uint32_t MatrixFile_LayerRecord::cutop() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.cuTop) + return _internal_cutop(); +} +inline void MatrixFile_LayerRecord::_internal_set_cutop(uint32_t value) { + + _impl_.cutop_ = value; +} +inline void MatrixFile_LayerRecord::set_cutop(uint32_t value) { + _internal_set_cutop(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.cuTop) +} + +// uint32 cuBottom = 10; +inline void MatrixFile_LayerRecord::clear_cubottom() { + _impl_.cubottom_ = 0u; +} +inline uint32_t MatrixFile_LayerRecord::_internal_cubottom() const { + return _impl_.cubottom_; +} +inline uint32_t MatrixFile_LayerRecord::cubottom() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.cuBottom) + return _internal_cubottom(); +} +inline void MatrixFile_LayerRecord::_internal_set_cubottom(uint32_t value) { + + _impl_.cubottom_ = value; +} +inline void MatrixFile_LayerRecord::set_cubottom(uint32_t value) { + _internal_set_cubottom(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.cuBottom) +} + +// uint32 ref = 11; +inline void MatrixFile_LayerRecord::clear_ref() { + _impl_.ref_ = 0u; +} +inline uint32_t MatrixFile_LayerRecord::_internal_ref() const { + return _impl_.ref_; +} +inline uint32_t MatrixFile_LayerRecord::ref() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.ref) + return _internal_ref(); +} +inline void MatrixFile_LayerRecord::_internal_set_ref(uint32_t value) { + + _impl_.ref_ = value; +} +inline void MatrixFile_LayerRecord::set_ref(uint32_t value) { + _internal_set_ref(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.ref) +} + +// string startName = 12; +inline void MatrixFile_LayerRecord::clear_startname() { + _impl_.startname_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::startname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName) + return _internal_startname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_startname(ArgT0&& arg0, ArgT... args) { + + _impl_.startname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName) +} +inline std::string* MatrixFile_LayerRecord::mutable_startname() { + std::string* _s = _internal_mutable_startname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_startname() const { + return _impl_.startname_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_startname(const std::string& value) { + + _impl_.startname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_startname() { + + return _impl_.startname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_startname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName) + return _impl_.startname_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_startname(std::string* startname) { + if (startname != nullptr) { + + } else { + + } + _impl_.startname_.SetAllocated(startname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.startname_.IsDefault()) { + _impl_.startname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.startName) +} + +// string endName = 13; +inline void MatrixFile_LayerRecord::clear_endname() { + _impl_.endname_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::endname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName) + return _internal_endname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_endname(ArgT0&& arg0, ArgT... args) { + + _impl_.endname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName) +} +inline std::string* MatrixFile_LayerRecord::mutable_endname() { + std::string* _s = _internal_mutable_endname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_endname() const { + return _impl_.endname_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_endname(const std::string& value) { + + _impl_.endname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_endname() { + + return _impl_.endname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_endname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName) + return _impl_.endname_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_endname(std::string* endname) { + if (endname != nullptr) { + + } else { + + } + _impl_.endname_.SetAllocated(endname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.endname_.IsDefault()) { + _impl_.endname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.endName) +} + +// string oldName = 14; +inline void MatrixFile_LayerRecord::clear_oldname() { + _impl_.oldname_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::oldname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName) + return _internal_oldname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_oldname(ArgT0&& arg0, ArgT... args) { + + _impl_.oldname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName) +} +inline std::string* MatrixFile_LayerRecord::mutable_oldname() { + std::string* _s = _internal_mutable_oldname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_oldname() const { + return _impl_.oldname_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_oldname(const std::string& value) { + + _impl_.oldname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_oldname() { + + return _impl_.oldname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_oldname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName) + return _impl_.oldname_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_oldname(std::string* oldname) { + if (oldname != nullptr) { + + } else { + + } + _impl_.oldname_.SetAllocated(oldname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.oldname_.IsDefault()) { + _impl_.oldname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.oldName) +} + +// string addType = 15; +inline void MatrixFile_LayerRecord::clear_addtype() { + _impl_.addtype_.ClearToEmpty(); +} +inline const std::string& MatrixFile_LayerRecord::addtype() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType) + return _internal_addtype(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MatrixFile_LayerRecord::set_addtype(ArgT0&& arg0, ArgT... args) { + + _impl_.addtype_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType) +} +inline std::string* MatrixFile_LayerRecord::mutable_addtype() { + std::string* _s = _internal_mutable_addtype(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType) + return _s; +} +inline const std::string& MatrixFile_LayerRecord::_internal_addtype() const { + return _impl_.addtype_.Get(); +} +inline void MatrixFile_LayerRecord::_internal_set_addtype(const std::string& value) { + + _impl_.addtype_.Set(value, GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::_internal_mutable_addtype() { + + return _impl_.addtype_.Mutable(GetArenaForAllocation()); +} +inline std::string* MatrixFile_LayerRecord::release_addtype() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType) + return _impl_.addtype_.Release(); +} +inline void MatrixFile_LayerRecord::set_allocated_addtype(std::string* addtype) { + if (addtype != nullptr) { + + } else { + + } + _impl_.addtype_.SetAllocated(addtype, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.addtype_.IsDefault()) { + _impl_.addtype_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MatrixFile.LayerRecord.addType) +} + +// uint32 id = 17; +inline void MatrixFile_LayerRecord::clear_id() { + _impl_.id_ = 0u; +} +inline uint32_t MatrixFile_LayerRecord::_internal_id() const { + return _impl_.id_; +} +inline uint32_t MatrixFile_LayerRecord::id() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.LayerRecord.id) + return _internal_id(); +} +inline void MatrixFile_LayerRecord::_internal_set_id(uint32_t value) { + + _impl_.id_ = value; +} +inline void MatrixFile_LayerRecord::set_id(uint32_t value) { + _internal_set_id(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MatrixFile.LayerRecord.id) +} + +// ------------------------------------------------------------------- + // MatrixFile +// repeated .Odb.Lib.Protobuf.MatrixFile.StepRecord steps = 1; +inline int MatrixFile::_internal_steps_size() const { + return _impl_.steps_.size(); +} +inline int MatrixFile::steps_size() const { + return _internal_steps_size(); +} +inline void MatrixFile::clear_steps() { + _impl_.steps_.Clear(); +} +inline ::Odb::Lib::Protobuf::MatrixFile_StepRecord* MatrixFile::mutable_steps(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.steps) + return _impl_.steps_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >* +MatrixFile::mutable_steps() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.MatrixFile.steps) + return &_impl_.steps_; +} +inline const ::Odb::Lib::Protobuf::MatrixFile_StepRecord& MatrixFile::_internal_steps(int index) const { + return _impl_.steps_.Get(index); +} +inline const ::Odb::Lib::Protobuf::MatrixFile_StepRecord& MatrixFile::steps(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.steps) + return _internal_steps(index); +} +inline ::Odb::Lib::Protobuf::MatrixFile_StepRecord* MatrixFile::_internal_add_steps() { + return _impl_.steps_.Add(); +} +inline ::Odb::Lib::Protobuf::MatrixFile_StepRecord* MatrixFile::add_steps() { + ::Odb::Lib::Protobuf::MatrixFile_StepRecord* _add = _internal_add_steps(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.MatrixFile.steps) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_StepRecord >& +MatrixFile::steps() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.MatrixFile.steps) + return _impl_.steps_; +} + +// repeated .Odb.Lib.Protobuf.MatrixFile.LayerRecord layers = 2; +inline int MatrixFile::_internal_layers_size() const { + return _impl_.layers_.size(); +} +inline int MatrixFile::layers_size() const { + return _internal_layers_size(); +} +inline void MatrixFile::clear_layers() { + _impl_.layers_.Clear(); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* MatrixFile::mutable_layers(int index) { + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MatrixFile.layers) + return _impl_.layers_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >* +MatrixFile::mutable_layers() { + // @@protoc_insertion_point(field_mutable_list:Odb.Lib.Protobuf.MatrixFile.layers) + return &_impl_.layers_; +} +inline const ::Odb::Lib::Protobuf::MatrixFile_LayerRecord& MatrixFile::_internal_layers(int index) const { + return _impl_.layers_.Get(index); +} +inline const ::Odb::Lib::Protobuf::MatrixFile_LayerRecord& MatrixFile::layers(int index) const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MatrixFile.layers) + return _internal_layers(index); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* MatrixFile::_internal_add_layers() { + return _impl_.layers_.Add(); +} +inline ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* MatrixFile::add_layers() { + ::Odb::Lib::Protobuf::MatrixFile_LayerRecord* _add = _internal_add_layers(); + // @@protoc_insertion_point(field_add:Odb.Lib.Protobuf.MatrixFile.layers) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord >& +MatrixFile::layers() const { + // @@protoc_insertion_point(field_list:Odb.Lib.Protobuf.MatrixFile.layers) + return _impl_.layers_; +} + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + // @@protoc_insertion_point(namespace_scope) @@ -200,6 +1727,31 @@ class MatrixFile final : } // namespace Lib } // namespace Odb +PROTOBUF_NAMESPACE_OPEN + +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type>() { + return ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Type_descriptor(); +} +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context>() { + return ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Context_descriptor(); +} +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType>() { + return ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_DielectricType_descriptor(); +} +template <> struct is_proto_enum< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form>() { + return ::Odb::Lib::Protobuf::MatrixFile_LayerRecord_Form_descriptor(); +} + +PROTOBUF_NAMESPACE_CLOSE + // @@protoc_insertion_point(global_scope) #include diff --git a/OdbDesignLib/ProtoBuf/miscinfofile.pb.cc b/OdbDesignLib/ProtoBuf/miscinfofile.pb.cc index 0396a5b6..a244d0bc 100644 --- a/OdbDesignLib/ProtoBuf/miscinfofile.pb.cc +++ b/OdbDesignLib/ProtoBuf/miscinfofile.pb.cc @@ -24,7 +24,20 @@ namespace Odb { namespace Lib { namespace Protobuf { PROTOBUF_CONSTEXPR MiscInfoFile::MiscInfoFile( - ::_pbi::ConstantInitialized) {} + ::_pbi::ConstantInitialized): _impl_{ + /*decltype(_impl_._has_bits_)*/{} + , /*decltype(_impl_._cached_size_)*/{} + , /*decltype(_impl_.productmodelname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.jobname_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.odbversionmajor_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.odbversionminor_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.odbsource_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.saveapp_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.saveuser_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.units_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}} + , /*decltype(_impl_.creationdatedate_)*/nullptr + , /*decltype(_impl_.savedate_)*/nullptr + , /*decltype(_impl_.maxuniqueid_)*/0u} {} struct MiscInfoFileDefaultTypeInternal { PROTOBUF_CONSTEXPR MiscInfoFileDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} @@ -42,15 +55,37 @@ static constexpr ::_pb::EnumDescriptor const** file_level_enum_descriptors_misci static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_miscinfofile_2eproto = nullptr; const uint32_t TableStruct_miscinfofile_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_._has_bits_), PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.productmodelname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.jobname_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.odbversionmajor_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.odbversionminor_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.odbsource_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.creationdatedate_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.savedate_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.saveapp_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.saveuser_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.units_), + PROTOBUF_FIELD_OFFSET(::Odb::Lib::Protobuf::MiscInfoFile, _impl_.maxuniqueid_), + 0, + 1, + 2, + 3, + 4, + 8, + 9, + 5, + 6, + 7, + 10, }; static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { - { 0, -1, -1, sizeof(::Odb::Lib::Protobuf::MiscInfoFile)}, + { 0, 17, -1, sizeof(::Odb::Lib::Protobuf::MiscInfoFile)}, }; static const ::_pb::Message* const file_default_instances[] = { @@ -58,14 +93,31 @@ static const ::_pb::Message* const file_default_instances[] = { }; const char descriptor_table_protodef_miscinfofile_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = - "\n\022miscinfofile.proto\022\020Odb.Lib.Protobuf\"\016" - "\n\014MiscInfoFileb\006proto3" + "\n\022miscinfofile.proto\022\020Odb.Lib.Protobuf\032\037" + "google/protobuf/timestamp.proto\"\214\004\n\014Misc" + "InfoFile\022\035\n\020productModelName\030\001 \001(\tH\000\210\001\001\022" + "\024\n\007jobName\030\002 \001(\tH\001\210\001\001\022\034\n\017odbVersionMajor" + "\030\003 \001(\tH\002\210\001\001\022\034\n\017odbVersionMinor\030\004 \001(\tH\003\210\001" + "\001\022\026\n\todbSource\030\005 \001(\tH\004\210\001\001\0229\n\020creationDat" + "eDate\030\006 \001(\0132\032.google.protobuf.TimestampH" + "\005\210\001\001\0221\n\010saveDate\030\007 \001(\0132\032.google.protobuf" + ".TimestampH\006\210\001\001\022\024\n\007saveApp\030\010 \001(\tH\007\210\001\001\022\025\n" + "\010saveUser\030\t \001(\tH\010\210\001\001\022\022\n\005units\030\n \001(\tH\t\210\001\001" + "\022\030\n\013maxUniqueId\030\013 \001(\rH\n\210\001\001B\023\n\021_productMo" + "delNameB\n\n\010_jobNameB\022\n\020_odbVersionMajorB" + "\022\n\020_odbVersionMinorB\014\n\n_odbSourceB\023\n\021_cr" + "eationDateDateB\013\n\t_saveDateB\n\n\010_saveAppB" + "\013\n\t_saveUserB\010\n\006_unitsB\016\n\014_maxUniqueIdb\006" + "proto3" ; +static const ::_pbi::DescriptorTable* const descriptor_table_miscinfofile_2eproto_deps[1] = { + &::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto, +}; static ::_pbi::once_flag descriptor_table_miscinfofile_2eproto_once; const ::_pbi::DescriptorTable descriptor_table_miscinfofile_2eproto = { - false, false, 62, descriptor_table_protodef_miscinfofile_2eproto, + false, false, 606, descriptor_table_protodef_miscinfofile_2eproto, "miscinfofile.proto", - &descriptor_table_miscinfofile_2eproto_once, nullptr, 0, 1, + &descriptor_table_miscinfofile_2eproto_once, descriptor_table_miscinfofile_2eproto_deps, 1, 1, schemas, file_default_instances, TableStruct_miscinfofile_2eproto::offsets, file_level_metadata_miscinfofile_2eproto, file_level_enum_descriptors_miscinfofile_2eproto, file_level_service_descriptors_miscinfofile_2eproto, @@ -84,35 +136,743 @@ namespace Protobuf { class MiscInfoFile::_Internal { public: + using HasBits = decltype(std::declval()._impl_._has_bits_); + static void set_has_productmodelname(HasBits* has_bits) { + (*has_bits)[0] |= 1u; + } + static void set_has_jobname(HasBits* has_bits) { + (*has_bits)[0] |= 2u; + } + static void set_has_odbversionmajor(HasBits* has_bits) { + (*has_bits)[0] |= 4u; + } + static void set_has_odbversionminor(HasBits* has_bits) { + (*has_bits)[0] |= 8u; + } + static void set_has_odbsource(HasBits* has_bits) { + (*has_bits)[0] |= 16u; + } + static const ::PROTOBUF_NAMESPACE_ID::Timestamp& creationdatedate(const MiscInfoFile* msg); + static void set_has_creationdatedate(HasBits* has_bits) { + (*has_bits)[0] |= 256u; + } + static const ::PROTOBUF_NAMESPACE_ID::Timestamp& savedate(const MiscInfoFile* msg); + static void set_has_savedate(HasBits* has_bits) { + (*has_bits)[0] |= 512u; + } + static void set_has_saveapp(HasBits* has_bits) { + (*has_bits)[0] |= 32u; + } + static void set_has_saveuser(HasBits* has_bits) { + (*has_bits)[0] |= 64u; + } + static void set_has_units(HasBits* has_bits) { + (*has_bits)[0] |= 128u; + } + static void set_has_maxuniqueid(HasBits* has_bits) { + (*has_bits)[0] |= 1024u; + } }; +const ::PROTOBUF_NAMESPACE_ID::Timestamp& +MiscInfoFile::_Internal::creationdatedate(const MiscInfoFile* msg) { + return *msg->_impl_.creationdatedate_; +} +const ::PROTOBUF_NAMESPACE_ID::Timestamp& +MiscInfoFile::_Internal::savedate(const MiscInfoFile* msg) { + return *msg->_impl_.savedate_; +} +void MiscInfoFile::clear_creationdatedate() { + if (_impl_.creationdatedate_ != nullptr) _impl_.creationdatedate_->Clear(); + _impl_._has_bits_[0] &= ~0x00000100u; +} +void MiscInfoFile::clear_savedate() { + if (_impl_.savedate_ != nullptr) _impl_.savedate_->Clear(); + _impl_._has_bits_[0] &= ~0x00000200u; +} MiscInfoFile::MiscInfoFile(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(arena, is_message_owned); // @@protoc_insertion_point(arena_constructor:Odb.Lib.Protobuf.MiscInfoFile) } MiscInfoFile::MiscInfoFile(const MiscInfoFile& from) - : ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase() { + : ::PROTOBUF_NAMESPACE_ID::Message() { MiscInfoFile* const _this = this; (void)_this; + new (&_impl_) Impl_{ + decltype(_impl_._has_bits_){from._impl_._has_bits_} + , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.productmodelname_){} + , decltype(_impl_.jobname_){} + , decltype(_impl_.odbversionmajor_){} + , decltype(_impl_.odbversionminor_){} + , decltype(_impl_.odbsource_){} + , decltype(_impl_.saveapp_){} + , decltype(_impl_.saveuser_){} + , decltype(_impl_.units_){} + , decltype(_impl_.creationdatedate_){nullptr} + , decltype(_impl_.savedate_){nullptr} + , decltype(_impl_.maxuniqueid_){}}; + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + _impl_.productmodelname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.productmodelname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_productmodelname()) { + _this->_impl_.productmodelname_.Set(from._internal_productmodelname(), + _this->GetArenaForAllocation()); + } + _impl_.jobname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.jobname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_jobname()) { + _this->_impl_.jobname_.Set(from._internal_jobname(), + _this->GetArenaForAllocation()); + } + _impl_.odbversionmajor_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionmajor_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_odbversionmajor()) { + _this->_impl_.odbversionmajor_.Set(from._internal_odbversionmajor(), + _this->GetArenaForAllocation()); + } + _impl_.odbversionminor_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionminor_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_odbversionminor()) { + _this->_impl_.odbversionminor_.Set(from._internal_odbversionminor(), + _this->GetArenaForAllocation()); + } + _impl_.odbsource_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbsource_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_odbsource()) { + _this->_impl_.odbsource_.Set(from._internal_odbsource(), + _this->GetArenaForAllocation()); + } + _impl_.saveapp_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveapp_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_saveapp()) { + _this->_impl_.saveapp_.Set(from._internal_saveapp(), + _this->GetArenaForAllocation()); + } + _impl_.saveuser_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveuser_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_saveuser()) { + _this->_impl_.saveuser_.Set(from._internal_saveuser(), + _this->GetArenaForAllocation()); + } + _impl_.units_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.units_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (from._internal_has_units()) { + _this->_impl_.units_.Set(from._internal_units(), + _this->GetArenaForAllocation()); + } + if (from._internal_has_creationdatedate()) { + _this->_impl_.creationdatedate_ = new ::PROTOBUF_NAMESPACE_ID::Timestamp(*from._impl_.creationdatedate_); + } + if (from._internal_has_savedate()) { + _this->_impl_.savedate_ = new ::PROTOBUF_NAMESPACE_ID::Timestamp(*from._impl_.savedate_); + } + _this->_impl_.maxuniqueid_ = from._impl_.maxuniqueid_; // @@protoc_insertion_point(copy_constructor:Odb.Lib.Protobuf.MiscInfoFile) } +inline void MiscInfoFile::SharedCtor( + ::_pb::Arena* arena, bool is_message_owned) { + (void)arena; + (void)is_message_owned; + new (&_impl_) Impl_{ + decltype(_impl_._has_bits_){} + , /*decltype(_impl_._cached_size_)*/{} + , decltype(_impl_.productmodelname_){} + , decltype(_impl_.jobname_){} + , decltype(_impl_.odbversionmajor_){} + , decltype(_impl_.odbversionminor_){} + , decltype(_impl_.odbsource_){} + , decltype(_impl_.saveapp_){} + , decltype(_impl_.saveuser_){} + , decltype(_impl_.units_){} + , decltype(_impl_.creationdatedate_){nullptr} + , decltype(_impl_.savedate_){nullptr} + , decltype(_impl_.maxuniqueid_){0u} + }; + _impl_.productmodelname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.productmodelname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.jobname_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.jobname_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionmajor_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionmajor_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionminor_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbversionminor_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbsource_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.odbsource_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveapp_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveapp_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveuser_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.saveuser_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.units_.InitDefault(); + #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + _impl_.units_.Set("", GetArenaForAllocation()); + #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING +} + +MiscInfoFile::~MiscInfoFile() { + // @@protoc_insertion_point(destructor:Odb.Lib.Protobuf.MiscInfoFile) + if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) { + (void)arena; + return; + } + SharedDtor(); +} + +inline void MiscInfoFile::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + _impl_.productmodelname_.Destroy(); + _impl_.jobname_.Destroy(); + _impl_.odbversionmajor_.Destroy(); + _impl_.odbversionminor_.Destroy(); + _impl_.odbsource_.Destroy(); + _impl_.saveapp_.Destroy(); + _impl_.saveuser_.Destroy(); + _impl_.units_.Destroy(); + if (this != internal_default_instance()) delete _impl_.creationdatedate_; + if (this != internal_default_instance()) delete _impl_.savedate_; +} + +void MiscInfoFile::SetCachedSize(int size) const { + _impl_._cached_size_.Set(size); +} + +void MiscInfoFile::Clear() { +// @@protoc_insertion_point(message_clear_start:Odb.Lib.Protobuf.MiscInfoFile) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + cached_has_bits = _impl_._has_bits_[0]; + if (cached_has_bits & 0x000000ffu) { + if (cached_has_bits & 0x00000001u) { + _impl_.productmodelname_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000002u) { + _impl_.jobname_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000004u) { + _impl_.odbversionmajor_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000008u) { + _impl_.odbversionminor_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000010u) { + _impl_.odbsource_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000020u) { + _impl_.saveapp_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000040u) { + _impl_.saveuser_.ClearNonDefaultToEmpty(); + } + if (cached_has_bits & 0x00000080u) { + _impl_.units_.ClearNonDefaultToEmpty(); + } + } + if (cached_has_bits & 0x00000300u) { + if (cached_has_bits & 0x00000100u) { + GOOGLE_DCHECK(_impl_.creationdatedate_ != nullptr); + _impl_.creationdatedate_->Clear(); + } + if (cached_has_bits & 0x00000200u) { + GOOGLE_DCHECK(_impl_.savedate_ != nullptr); + _impl_.savedate_->Clear(); + } + } + _impl_.maxuniqueid_ = 0u; + _impl_._has_bits_.Clear(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* MiscInfoFile::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + _Internal::HasBits has_bits{}; + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::_pbi::ReadTag(ptr, &tag); + switch (tag >> 3) { + // optional string productModelName = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 10)) { + auto str = _internal_mutable_productmodelname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.productModelName")); + } else + goto handle_unusual; + continue; + // optional string jobName = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 18)) { + auto str = _internal_mutable_jobname(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.jobName")); + } else + goto handle_unusual; + continue; + // optional string odbVersionMajor = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 26)) { + auto str = _internal_mutable_odbversionmajor(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor")); + } else + goto handle_unusual; + continue; + // optional string odbVersionMinor = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 34)) { + auto str = _internal_mutable_odbversionminor(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor")); + } else + goto handle_unusual; + continue; + // optional string odbSource = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 42)) { + auto str = _internal_mutable_odbsource(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.odbSource")); + } else + goto handle_unusual; + continue; + // optional .google.protobuf.Timestamp creationDateDate = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 50)) { + ptr = ctx->ParseMessage(_internal_mutable_creationdatedate(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // optional .google.protobuf.Timestamp saveDate = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 58)) { + ptr = ctx->ParseMessage(_internal_mutable_savedate(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // optional string saveApp = 8; + case 8: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 66)) { + auto str = _internal_mutable_saveapp(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.saveApp")); + } else + goto handle_unusual; + continue; + // optional string saveUser = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 74)) { + auto str = _internal_mutable_saveuser(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.saveUser")); + } else + goto handle_unusual; + continue; + // optional string units = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 82)) { + auto str = _internal_mutable_units(); + ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx); + CHK_(ptr); + CHK_(::_pbi::VerifyUTF8(str, "Odb.Lib.Protobuf.MiscInfoFile.units")); + } else + goto handle_unusual; + continue; + // optional uint32 maxUniqueId = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast(tag) == 88)) { + _Internal::set_has_maxuniqueid(&has_bits); + _impl_.maxuniqueid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + _impl_._has_bits_.Or(has_bits); + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* MiscInfoFile::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:Odb.Lib.Protobuf.MiscInfoFile) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // optional string productModelName = 1; + if (_internal_has_productmodelname()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_productmodelname().data(), static_cast(this->_internal_productmodelname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.productModelName"); + target = stream->WriteStringMaybeAliased( + 1, this->_internal_productmodelname(), target); + } + + // optional string jobName = 2; + if (_internal_has_jobname()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_jobname().data(), static_cast(this->_internal_jobname().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.jobName"); + target = stream->WriteStringMaybeAliased( + 2, this->_internal_jobname(), target); + } + + // optional string odbVersionMajor = 3; + if (_internal_has_odbversionmajor()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_odbversionmajor().data(), static_cast(this->_internal_odbversionmajor().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor"); + target = stream->WriteStringMaybeAliased( + 3, this->_internal_odbversionmajor(), target); + } + + // optional string odbVersionMinor = 4; + if (_internal_has_odbversionminor()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_odbversionminor().data(), static_cast(this->_internal_odbversionminor().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor"); + target = stream->WriteStringMaybeAliased( + 4, this->_internal_odbversionminor(), target); + } + + // optional string odbSource = 5; + if (_internal_has_odbsource()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_odbsource().data(), static_cast(this->_internal_odbsource().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.odbSource"); + target = stream->WriteStringMaybeAliased( + 5, this->_internal_odbsource(), target); + } + // optional .google.protobuf.Timestamp creationDateDate = 6; + if (_internal_has_creationdatedate()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(6, _Internal::creationdatedate(this), + _Internal::creationdatedate(this).GetCachedSize(), target, stream); + } + // optional .google.protobuf.Timestamp saveDate = 7; + if (_internal_has_savedate()) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(7, _Internal::savedate(this), + _Internal::savedate(this).GetCachedSize(), target, stream); + } + // optional string saveApp = 8; + if (_internal_has_saveapp()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_saveapp().data(), static_cast(this->_internal_saveapp().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.saveApp"); + target = stream->WriteStringMaybeAliased( + 8, this->_internal_saveapp(), target); + } + + // optional string saveUser = 9; + if (_internal_has_saveuser()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_saveuser().data(), static_cast(this->_internal_saveuser().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.saveUser"); + target = stream->WriteStringMaybeAliased( + 9, this->_internal_saveuser(), target); + } + + // optional string units = 10; + if (_internal_has_units()) { + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String( + this->_internal_units().data(), static_cast(this->_internal_units().length()), + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE, + "Odb.Lib.Protobuf.MiscInfoFile.units"); + target = stream->WriteStringMaybeAliased( + 10, this->_internal_units(), target); + } + + // optional uint32 maxUniqueId = 11; + if (_internal_has_maxuniqueid()) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray(11, this->_internal_maxuniqueid(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:Odb.Lib.Protobuf.MiscInfoFile) + return target; +} + +size_t MiscInfoFile::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:Odb.Lib.Protobuf.MiscInfoFile) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + cached_has_bits = _impl_._has_bits_[0]; + if (cached_has_bits & 0x000000ffu) { + // optional string productModelName = 1; + if (cached_has_bits & 0x00000001u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_productmodelname()); + } + + // optional string jobName = 2; + if (cached_has_bits & 0x00000002u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_jobname()); + } + + // optional string odbVersionMajor = 3; + if (cached_has_bits & 0x00000004u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_odbversionmajor()); + } + + // optional string odbVersionMinor = 4; + if (cached_has_bits & 0x00000008u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_odbversionminor()); + } + + // optional string odbSource = 5; + if (cached_has_bits & 0x00000010u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_odbsource()); + } + + // optional string saveApp = 8; + if (cached_has_bits & 0x00000020u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_saveapp()); + } + + // optional string saveUser = 9; + if (cached_has_bits & 0x00000040u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_saveuser()); + } + + // optional string units = 10; + if (cached_has_bits & 0x00000080u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize( + this->_internal_units()); + } + + } + if (cached_has_bits & 0x00000700u) { + // optional .google.protobuf.Timestamp creationDateDate = 6; + if (cached_has_bits & 0x00000100u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.creationdatedate_); + } + + // optional .google.protobuf.Timestamp saveDate = 7; + if (cached_has_bits & 0x00000200u) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *_impl_.savedate_); + } + + // optional uint32 maxUniqueId = 11; + if (cached_has_bits & 0x00000400u) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_maxuniqueid()); + } + + } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MiscInfoFile::_class_data_ = { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl, - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl, + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck, + MiscInfoFile::MergeImpl }; const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MiscInfoFile::GetClassData() const { return &_class_data_; } +void MiscInfoFile::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:Odb.Lib.Protobuf.MiscInfoFile) + GOOGLE_DCHECK_NE(&from, _this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + cached_has_bits = from._impl_._has_bits_[0]; + if (cached_has_bits & 0x000000ffu) { + if (cached_has_bits & 0x00000001u) { + _this->_internal_set_productmodelname(from._internal_productmodelname()); + } + if (cached_has_bits & 0x00000002u) { + _this->_internal_set_jobname(from._internal_jobname()); + } + if (cached_has_bits & 0x00000004u) { + _this->_internal_set_odbversionmajor(from._internal_odbversionmajor()); + } + if (cached_has_bits & 0x00000008u) { + _this->_internal_set_odbversionminor(from._internal_odbversionminor()); + } + if (cached_has_bits & 0x00000010u) { + _this->_internal_set_odbsource(from._internal_odbsource()); + } + if (cached_has_bits & 0x00000020u) { + _this->_internal_set_saveapp(from._internal_saveapp()); + } + if (cached_has_bits & 0x00000040u) { + _this->_internal_set_saveuser(from._internal_saveuser()); + } + if (cached_has_bits & 0x00000080u) { + _this->_internal_set_units(from._internal_units()); + } + } + if (cached_has_bits & 0x00000700u) { + if (cached_has_bits & 0x00000100u) { + _this->_internal_mutable_creationdatedate()->::PROTOBUF_NAMESPACE_ID::Timestamp::MergeFrom( + from._internal_creationdatedate()); + } + if (cached_has_bits & 0x00000200u) { + _this->_internal_mutable_savedate()->::PROTOBUF_NAMESPACE_ID::Timestamp::MergeFrom( + from._internal_savedate()); + } + if (cached_has_bits & 0x00000400u) { + _this->_impl_.maxuniqueid_ = from._impl_.maxuniqueid_; + } + _this->_impl_._has_bits_[0] |= cached_has_bits; + } + _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} +void MiscInfoFile::CopyFrom(const MiscInfoFile& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:Odb.Lib.Protobuf.MiscInfoFile) + if (&from == this) return; + Clear(); + MergeFrom(from); +} +bool MiscInfoFile::IsInitialized() const { + return true; +} +void MiscInfoFile::InternalSwap(MiscInfoFile* other) { + using std::swap; + auto* lhs_arena = GetArenaForAllocation(); + auto* rhs_arena = other->GetArenaForAllocation(); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.productmodelname_, lhs_arena, + &other->_impl_.productmodelname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.jobname_, lhs_arena, + &other->_impl_.jobname_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.odbversionmajor_, lhs_arena, + &other->_impl_.odbversionmajor_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.odbversionminor_, lhs_arena, + &other->_impl_.odbversionminor_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.odbsource_, lhs_arena, + &other->_impl_.odbsource_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.saveapp_, lhs_arena, + &other->_impl_.saveapp_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.saveuser_, lhs_arena, + &other->_impl_.saveuser_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap( + &_impl_.units_, lhs_arena, + &other->_impl_.units_, rhs_arena + ); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(MiscInfoFile, _impl_.maxuniqueid_) + + sizeof(MiscInfoFile::_impl_.maxuniqueid_) + - PROTOBUF_FIELD_OFFSET(MiscInfoFile, _impl_.creationdatedate_)>( + reinterpret_cast(&_impl_.creationdatedate_), + reinterpret_cast(&other->_impl_.creationdatedate_)); +} ::PROTOBUF_NAMESPACE_ID::Metadata MiscInfoFile::GetMetadata() const { return ::_pbi::AssignDescriptors( diff --git a/OdbDesignLib/ProtoBuf/miscinfofile.pb.h b/OdbDesignLib/ProtoBuf/miscinfofile.pb.h index a5b737a1..6b27404c 100644 --- a/OdbDesignLib/ProtoBuf/miscinfofile.pb.h +++ b/OdbDesignLib/ProtoBuf/miscinfofile.pb.h @@ -23,7 +23,6 @@ #include #include #include -#include #include #include #include @@ -31,6 +30,7 @@ #include // IWYU pragma: export #include // IWYU pragma: export #include +#include // @@protoc_insertion_point(includes) #include #define PROTOBUF_INTERNAL_EXPORT_miscinfofile_2eproto @@ -64,9 +64,10 @@ namespace Protobuf { // =================================================================== class MiscInfoFile final : - public ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MiscInfoFile) */ { + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:Odb.Lib.Protobuf.MiscInfoFile) */ { public: inline MiscInfoFile() : MiscInfoFile(nullptr) {} + ~MiscInfoFile() override; explicit PROTOBUF_CONSTEXPR MiscInfoFile(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); MiscInfoFile(const MiscInfoFile& from); @@ -139,15 +140,29 @@ class MiscInfoFile final : MiscInfoFile* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { return CreateMaybeMessage(arena); } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyFrom; - inline void CopyFrom(const MiscInfoFile& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::CopyImpl(*this, from); - } - using ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeFrom; - void MergeFrom(const MiscInfoFile& from) { - ::PROTOBUF_NAMESPACE_ID::internal::ZeroFieldsBase::MergeImpl(*this, from); + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const MiscInfoFile& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom( const MiscInfoFile& from) { + MiscInfoFile::MergeImpl(*this, from); } + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg); public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MiscInfoFile* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; @@ -168,6 +183,212 @@ class MiscInfoFile final : // accessors ------------------------------------------------------- + enum : int { + kProductModelNameFieldNumber = 1, + kJobNameFieldNumber = 2, + kOdbVersionMajorFieldNumber = 3, + kOdbVersionMinorFieldNumber = 4, + kOdbSourceFieldNumber = 5, + kSaveAppFieldNumber = 8, + kSaveUserFieldNumber = 9, + kUnitsFieldNumber = 10, + kCreationDateDateFieldNumber = 6, + kSaveDateFieldNumber = 7, + kMaxUniqueIdFieldNumber = 11, + }; + // optional string productModelName = 1; + bool has_productmodelname() const; + private: + bool _internal_has_productmodelname() const; + public: + void clear_productmodelname(); + const std::string& productmodelname() const; + template + void set_productmodelname(ArgT0&& arg0, ArgT... args); + std::string* mutable_productmodelname(); + PROTOBUF_NODISCARD std::string* release_productmodelname(); + void set_allocated_productmodelname(std::string* productmodelname); + private: + const std::string& _internal_productmodelname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_productmodelname(const std::string& value); + std::string* _internal_mutable_productmodelname(); + public: + + // optional string jobName = 2; + bool has_jobname() const; + private: + bool _internal_has_jobname() const; + public: + void clear_jobname(); + const std::string& jobname() const; + template + void set_jobname(ArgT0&& arg0, ArgT... args); + std::string* mutable_jobname(); + PROTOBUF_NODISCARD std::string* release_jobname(); + void set_allocated_jobname(std::string* jobname); + private: + const std::string& _internal_jobname() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_jobname(const std::string& value); + std::string* _internal_mutable_jobname(); + public: + + // optional string odbVersionMajor = 3; + bool has_odbversionmajor() const; + private: + bool _internal_has_odbversionmajor() const; + public: + void clear_odbversionmajor(); + const std::string& odbversionmajor() const; + template + void set_odbversionmajor(ArgT0&& arg0, ArgT... args); + std::string* mutable_odbversionmajor(); + PROTOBUF_NODISCARD std::string* release_odbversionmajor(); + void set_allocated_odbversionmajor(std::string* odbversionmajor); + private: + const std::string& _internal_odbversionmajor() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_odbversionmajor(const std::string& value); + std::string* _internal_mutable_odbversionmajor(); + public: + + // optional string odbVersionMinor = 4; + bool has_odbversionminor() const; + private: + bool _internal_has_odbversionminor() const; + public: + void clear_odbversionminor(); + const std::string& odbversionminor() const; + template + void set_odbversionminor(ArgT0&& arg0, ArgT... args); + std::string* mutable_odbversionminor(); + PROTOBUF_NODISCARD std::string* release_odbversionminor(); + void set_allocated_odbversionminor(std::string* odbversionminor); + private: + const std::string& _internal_odbversionminor() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_odbversionminor(const std::string& value); + std::string* _internal_mutable_odbversionminor(); + public: + + // optional string odbSource = 5; + bool has_odbsource() const; + private: + bool _internal_has_odbsource() const; + public: + void clear_odbsource(); + const std::string& odbsource() const; + template + void set_odbsource(ArgT0&& arg0, ArgT... args); + std::string* mutable_odbsource(); + PROTOBUF_NODISCARD std::string* release_odbsource(); + void set_allocated_odbsource(std::string* odbsource); + private: + const std::string& _internal_odbsource() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_odbsource(const std::string& value); + std::string* _internal_mutable_odbsource(); + public: + + // optional string saveApp = 8; + bool has_saveapp() const; + private: + bool _internal_has_saveapp() const; + public: + void clear_saveapp(); + const std::string& saveapp() const; + template + void set_saveapp(ArgT0&& arg0, ArgT... args); + std::string* mutable_saveapp(); + PROTOBUF_NODISCARD std::string* release_saveapp(); + void set_allocated_saveapp(std::string* saveapp); + private: + const std::string& _internal_saveapp() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_saveapp(const std::string& value); + std::string* _internal_mutable_saveapp(); + public: + + // optional string saveUser = 9; + bool has_saveuser() const; + private: + bool _internal_has_saveuser() const; + public: + void clear_saveuser(); + const std::string& saveuser() const; + template + void set_saveuser(ArgT0&& arg0, ArgT... args); + std::string* mutable_saveuser(); + PROTOBUF_NODISCARD std::string* release_saveuser(); + void set_allocated_saveuser(std::string* saveuser); + private: + const std::string& _internal_saveuser() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_saveuser(const std::string& value); + std::string* _internal_mutable_saveuser(); + public: + + // optional string units = 10; + bool has_units() const; + private: + bool _internal_has_units() const; + public: + void clear_units(); + const std::string& units() const; + template + void set_units(ArgT0&& arg0, ArgT... args); + std::string* mutable_units(); + PROTOBUF_NODISCARD std::string* release_units(); + void set_allocated_units(std::string* units); + private: + const std::string& _internal_units() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_units(const std::string& value); + std::string* _internal_mutable_units(); + public: + + // optional .google.protobuf.Timestamp creationDateDate = 6; + bool has_creationdatedate() const; + private: + bool _internal_has_creationdatedate() const; + public: + void clear_creationdatedate(); + const ::PROTOBUF_NAMESPACE_ID::Timestamp& creationdatedate() const; + PROTOBUF_NODISCARD ::PROTOBUF_NAMESPACE_ID::Timestamp* release_creationdatedate(); + ::PROTOBUF_NAMESPACE_ID::Timestamp* mutable_creationdatedate(); + void set_allocated_creationdatedate(::PROTOBUF_NAMESPACE_ID::Timestamp* creationdatedate); + private: + const ::PROTOBUF_NAMESPACE_ID::Timestamp& _internal_creationdatedate() const; + ::PROTOBUF_NAMESPACE_ID::Timestamp* _internal_mutable_creationdatedate(); + public: + void unsafe_arena_set_allocated_creationdatedate( + ::PROTOBUF_NAMESPACE_ID::Timestamp* creationdatedate); + ::PROTOBUF_NAMESPACE_ID::Timestamp* unsafe_arena_release_creationdatedate(); + + // optional .google.protobuf.Timestamp saveDate = 7; + bool has_savedate() const; + private: + bool _internal_has_savedate() const; + public: + void clear_savedate(); + const ::PROTOBUF_NAMESPACE_ID::Timestamp& savedate() const; + PROTOBUF_NODISCARD ::PROTOBUF_NAMESPACE_ID::Timestamp* release_savedate(); + ::PROTOBUF_NAMESPACE_ID::Timestamp* mutable_savedate(); + void set_allocated_savedate(::PROTOBUF_NAMESPACE_ID::Timestamp* savedate); + private: + const ::PROTOBUF_NAMESPACE_ID::Timestamp& _internal_savedate() const; + ::PROTOBUF_NAMESPACE_ID::Timestamp* _internal_mutable_savedate(); + public: + void unsafe_arena_set_allocated_savedate( + ::PROTOBUF_NAMESPACE_ID::Timestamp* savedate); + ::PROTOBUF_NAMESPACE_ID::Timestamp* unsafe_arena_release_savedate(); + + // optional uint32 maxUniqueId = 11; + bool has_maxuniqueid() const; + private: + bool _internal_has_maxuniqueid() const; + public: + void clear_maxuniqueid(); + uint32_t maxuniqueid() const; + void set_maxuniqueid(uint32_t value); + private: + uint32_t _internal_maxuniqueid() const; + void _internal_set_maxuniqueid(uint32_t value); + public: + // @@protoc_insertion_point(class_scope:Odb.Lib.Protobuf.MiscInfoFile) private: class _Internal; @@ -176,7 +397,21 @@ class MiscInfoFile final : typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; struct Impl_ { + ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr productmodelname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr jobname_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr odbversionmajor_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr odbversionminor_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr odbsource_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr saveapp_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr saveuser_; + ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr units_; + ::PROTOBUF_NAMESPACE_ID::Timestamp* creationdatedate_; + ::PROTOBUF_NAMESPACE_ID::Timestamp* savedate_; + uint32_t maxuniqueid_; }; + union { Impl_ _impl_; }; friend struct ::TableStruct_miscinfofile_2eproto; }; // =================================================================== @@ -190,6 +425,752 @@ class MiscInfoFile final : #endif // __GNUC__ // MiscInfoFile +// optional string productModelName = 1; +inline bool MiscInfoFile::_internal_has_productmodelname() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + return value; +} +inline bool MiscInfoFile::has_productmodelname() const { + return _internal_has_productmodelname(); +} +inline void MiscInfoFile::clear_productmodelname() { + _impl_.productmodelname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const std::string& MiscInfoFile::productmodelname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.productModelName) + return _internal_productmodelname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_productmodelname(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.productmodelname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.productModelName) +} +inline std::string* MiscInfoFile::mutable_productmodelname() { + std::string* _s = _internal_mutable_productmodelname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.productModelName) + return _s; +} +inline const std::string& MiscInfoFile::_internal_productmodelname() const { + return _impl_.productmodelname_.Get(); +} +inline void MiscInfoFile::_internal_set_productmodelname(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000001u; + _impl_.productmodelname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_productmodelname() { + _impl_._has_bits_[0] |= 0x00000001u; + return _impl_.productmodelname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_productmodelname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.productModelName) + if (!_internal_has_productmodelname()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000001u; + auto* p = _impl_.productmodelname_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.productmodelname_.IsDefault()) { + _impl_.productmodelname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_productmodelname(std::string* productmodelname) { + if (productmodelname != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + _impl_.productmodelname_.SetAllocated(productmodelname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.productmodelname_.IsDefault()) { + _impl_.productmodelname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.productModelName) +} + +// optional string jobName = 2; +inline bool MiscInfoFile::_internal_has_jobname() const { + bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0; + return value; +} +inline bool MiscInfoFile::has_jobname() const { + return _internal_has_jobname(); +} +inline void MiscInfoFile::clear_jobname() { + _impl_.jobname_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000002u; +} +inline const std::string& MiscInfoFile::jobname() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.jobName) + return _internal_jobname(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_jobname(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.jobname_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.jobName) +} +inline std::string* MiscInfoFile::mutable_jobname() { + std::string* _s = _internal_mutable_jobname(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.jobName) + return _s; +} +inline const std::string& MiscInfoFile::_internal_jobname() const { + return _impl_.jobname_.Get(); +} +inline void MiscInfoFile::_internal_set_jobname(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000002u; + _impl_.jobname_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_jobname() { + _impl_._has_bits_[0] |= 0x00000002u; + return _impl_.jobname_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_jobname() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.jobName) + if (!_internal_has_jobname()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000002u; + auto* p = _impl_.jobname_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.jobname_.IsDefault()) { + _impl_.jobname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_jobname(std::string* jobname) { + if (jobname != nullptr) { + _impl_._has_bits_[0] |= 0x00000002u; + } else { + _impl_._has_bits_[0] &= ~0x00000002u; + } + _impl_.jobname_.SetAllocated(jobname, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.jobname_.IsDefault()) { + _impl_.jobname_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.jobName) +} + +// optional string odbVersionMajor = 3; +inline bool MiscInfoFile::_internal_has_odbversionmajor() const { + bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0; + return value; +} +inline bool MiscInfoFile::has_odbversionmajor() const { + return _internal_has_odbversionmajor(); +} +inline void MiscInfoFile::clear_odbversionmajor() { + _impl_.odbversionmajor_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000004u; +} +inline const std::string& MiscInfoFile::odbversionmajor() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor) + return _internal_odbversionmajor(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_odbversionmajor(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.odbversionmajor_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor) +} +inline std::string* MiscInfoFile::mutable_odbversionmajor() { + std::string* _s = _internal_mutable_odbversionmajor(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor) + return _s; +} +inline const std::string& MiscInfoFile::_internal_odbversionmajor() const { + return _impl_.odbversionmajor_.Get(); +} +inline void MiscInfoFile::_internal_set_odbversionmajor(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000004u; + _impl_.odbversionmajor_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_odbversionmajor() { + _impl_._has_bits_[0] |= 0x00000004u; + return _impl_.odbversionmajor_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_odbversionmajor() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor) + if (!_internal_has_odbversionmajor()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000004u; + auto* p = _impl_.odbversionmajor_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbversionmajor_.IsDefault()) { + _impl_.odbversionmajor_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_odbversionmajor(std::string* odbversionmajor) { + if (odbversionmajor != nullptr) { + _impl_._has_bits_[0] |= 0x00000004u; + } else { + _impl_._has_bits_[0] &= ~0x00000004u; + } + _impl_.odbversionmajor_.SetAllocated(odbversionmajor, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbversionmajor_.IsDefault()) { + _impl_.odbversionmajor_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMajor) +} + +// optional string odbVersionMinor = 4; +inline bool MiscInfoFile::_internal_has_odbversionminor() const { + bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0; + return value; +} +inline bool MiscInfoFile::has_odbversionminor() const { + return _internal_has_odbversionminor(); +} +inline void MiscInfoFile::clear_odbversionminor() { + _impl_.odbversionminor_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000008u; +} +inline const std::string& MiscInfoFile::odbversionminor() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor) + return _internal_odbversionminor(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_odbversionminor(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.odbversionminor_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor) +} +inline std::string* MiscInfoFile::mutable_odbversionminor() { + std::string* _s = _internal_mutable_odbversionminor(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor) + return _s; +} +inline const std::string& MiscInfoFile::_internal_odbversionminor() const { + return _impl_.odbversionminor_.Get(); +} +inline void MiscInfoFile::_internal_set_odbversionminor(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000008u; + _impl_.odbversionminor_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_odbversionminor() { + _impl_._has_bits_[0] |= 0x00000008u; + return _impl_.odbversionminor_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_odbversionminor() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor) + if (!_internal_has_odbversionminor()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000008u; + auto* p = _impl_.odbversionminor_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbversionminor_.IsDefault()) { + _impl_.odbversionminor_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_odbversionminor(std::string* odbversionminor) { + if (odbversionminor != nullptr) { + _impl_._has_bits_[0] |= 0x00000008u; + } else { + _impl_._has_bits_[0] &= ~0x00000008u; + } + _impl_.odbversionminor_.SetAllocated(odbversionminor, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbversionminor_.IsDefault()) { + _impl_.odbversionminor_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.odbVersionMinor) +} + +// optional string odbSource = 5; +inline bool MiscInfoFile::_internal_has_odbsource() const { + bool value = (_impl_._has_bits_[0] & 0x00000010u) != 0; + return value; +} +inline bool MiscInfoFile::has_odbsource() const { + return _internal_has_odbsource(); +} +inline void MiscInfoFile::clear_odbsource() { + _impl_.odbsource_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000010u; +} +inline const std::string& MiscInfoFile::odbsource() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.odbSource) + return _internal_odbsource(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_odbsource(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.odbsource_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.odbSource) +} +inline std::string* MiscInfoFile::mutable_odbsource() { + std::string* _s = _internal_mutable_odbsource(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.odbSource) + return _s; +} +inline const std::string& MiscInfoFile::_internal_odbsource() const { + return _impl_.odbsource_.Get(); +} +inline void MiscInfoFile::_internal_set_odbsource(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000010u; + _impl_.odbsource_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_odbsource() { + _impl_._has_bits_[0] |= 0x00000010u; + return _impl_.odbsource_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_odbsource() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.odbSource) + if (!_internal_has_odbsource()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000010u; + auto* p = _impl_.odbsource_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbsource_.IsDefault()) { + _impl_.odbsource_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_odbsource(std::string* odbsource) { + if (odbsource != nullptr) { + _impl_._has_bits_[0] |= 0x00000010u; + } else { + _impl_._has_bits_[0] &= ~0x00000010u; + } + _impl_.odbsource_.SetAllocated(odbsource, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.odbsource_.IsDefault()) { + _impl_.odbsource_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.odbSource) +} + +// optional .google.protobuf.Timestamp creationDateDate = 6; +inline bool MiscInfoFile::_internal_has_creationdatedate() const { + bool value = (_impl_._has_bits_[0] & 0x00000100u) != 0; + PROTOBUF_ASSUME(!value || _impl_.creationdatedate_ != nullptr); + return value; +} +inline bool MiscInfoFile::has_creationdatedate() const { + return _internal_has_creationdatedate(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& MiscInfoFile::_internal_creationdatedate() const { + const ::PROTOBUF_NAMESPACE_ID::Timestamp* p = _impl_.creationdatedate_; + return p != nullptr ? *p : reinterpret_cast( + ::PROTOBUF_NAMESPACE_ID::_Timestamp_default_instance_); +} +inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& MiscInfoFile::creationdatedate() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.creationDateDate) + return _internal_creationdatedate(); +} +inline void MiscInfoFile::unsafe_arena_set_allocated_creationdatedate( + ::PROTOBUF_NAMESPACE_ID::Timestamp* creationdatedate) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.creationdatedate_); + } + _impl_.creationdatedate_ = creationdatedate; + if (creationdatedate) { + _impl_._has_bits_[0] |= 0x00000100u; + } else { + _impl_._has_bits_[0] &= ~0x00000100u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.creationDateDate) +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::release_creationdatedate() { + _impl_._has_bits_[0] &= ~0x00000100u; + ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.creationdatedate_; + _impl_.creationdatedate_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::unsafe_arena_release_creationdatedate() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.creationDateDate) + _impl_._has_bits_[0] &= ~0x00000100u; + ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.creationdatedate_; + _impl_.creationdatedate_ = nullptr; + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::_internal_mutable_creationdatedate() { + _impl_._has_bits_[0] |= 0x00000100u; + if (_impl_.creationdatedate_ == nullptr) { + auto* p = CreateMaybeMessage<::PROTOBUF_NAMESPACE_ID::Timestamp>(GetArenaForAllocation()); + _impl_.creationdatedate_ = p; + } + return _impl_.creationdatedate_; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::mutable_creationdatedate() { + ::PROTOBUF_NAMESPACE_ID::Timestamp* _msg = _internal_mutable_creationdatedate(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.creationDateDate) + return _msg; +} +inline void MiscInfoFile::set_allocated_creationdatedate(::PROTOBUF_NAMESPACE_ID::Timestamp* creationdatedate) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.creationdatedate_); + } + if (creationdatedate) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(creationdatedate)); + if (message_arena != submessage_arena) { + creationdatedate = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, creationdatedate, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000100u; + } else { + _impl_._has_bits_[0] &= ~0x00000100u; + } + _impl_.creationdatedate_ = creationdatedate; + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.creationDateDate) +} + +// optional .google.protobuf.Timestamp saveDate = 7; +inline bool MiscInfoFile::_internal_has_savedate() const { + bool value = (_impl_._has_bits_[0] & 0x00000200u) != 0; + PROTOBUF_ASSUME(!value || _impl_.savedate_ != nullptr); + return value; +} +inline bool MiscInfoFile::has_savedate() const { + return _internal_has_savedate(); +} +inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& MiscInfoFile::_internal_savedate() const { + const ::PROTOBUF_NAMESPACE_ID::Timestamp* p = _impl_.savedate_; + return p != nullptr ? *p : reinterpret_cast( + ::PROTOBUF_NAMESPACE_ID::_Timestamp_default_instance_); +} +inline const ::PROTOBUF_NAMESPACE_ID::Timestamp& MiscInfoFile::savedate() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.saveDate) + return _internal_savedate(); +} +inline void MiscInfoFile::unsafe_arena_set_allocated_savedate( + ::PROTOBUF_NAMESPACE_ID::Timestamp* savedate) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.savedate_); + } + _impl_.savedate_ = savedate; + if (savedate) { + _impl_._has_bits_[0] |= 0x00000200u; + } else { + _impl_._has_bits_[0] &= ~0x00000200u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.saveDate) +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::release_savedate() { + _impl_._has_bits_[0] &= ~0x00000200u; + ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.savedate_; + _impl_.savedate_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::unsafe_arena_release_savedate() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.saveDate) + _impl_._has_bits_[0] &= ~0x00000200u; + ::PROTOBUF_NAMESPACE_ID::Timestamp* temp = _impl_.savedate_; + _impl_.savedate_ = nullptr; + return temp; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::_internal_mutable_savedate() { + _impl_._has_bits_[0] |= 0x00000200u; + if (_impl_.savedate_ == nullptr) { + auto* p = CreateMaybeMessage<::PROTOBUF_NAMESPACE_ID::Timestamp>(GetArenaForAllocation()); + _impl_.savedate_ = p; + } + return _impl_.savedate_; +} +inline ::PROTOBUF_NAMESPACE_ID::Timestamp* MiscInfoFile::mutable_savedate() { + ::PROTOBUF_NAMESPACE_ID::Timestamp* _msg = _internal_mutable_savedate(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.saveDate) + return _msg; +} +inline void MiscInfoFile::set_allocated_savedate(::PROTOBUF_NAMESPACE_ID::Timestamp* savedate) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.savedate_); + } + if (savedate) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(savedate)); + if (message_arena != submessage_arena) { + savedate = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, savedate, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000200u; + } else { + _impl_._has_bits_[0] &= ~0x00000200u; + } + _impl_.savedate_ = savedate; + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.saveDate) +} + +// optional string saveApp = 8; +inline bool MiscInfoFile::_internal_has_saveapp() const { + bool value = (_impl_._has_bits_[0] & 0x00000020u) != 0; + return value; +} +inline bool MiscInfoFile::has_saveapp() const { + return _internal_has_saveapp(); +} +inline void MiscInfoFile::clear_saveapp() { + _impl_.saveapp_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000020u; +} +inline const std::string& MiscInfoFile::saveapp() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.saveApp) + return _internal_saveapp(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_saveapp(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000020u; + _impl_.saveapp_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.saveApp) +} +inline std::string* MiscInfoFile::mutable_saveapp() { + std::string* _s = _internal_mutable_saveapp(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.saveApp) + return _s; +} +inline const std::string& MiscInfoFile::_internal_saveapp() const { + return _impl_.saveapp_.Get(); +} +inline void MiscInfoFile::_internal_set_saveapp(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000020u; + _impl_.saveapp_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_saveapp() { + _impl_._has_bits_[0] |= 0x00000020u; + return _impl_.saveapp_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_saveapp() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.saveApp) + if (!_internal_has_saveapp()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000020u; + auto* p = _impl_.saveapp_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.saveapp_.IsDefault()) { + _impl_.saveapp_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_saveapp(std::string* saveapp) { + if (saveapp != nullptr) { + _impl_._has_bits_[0] |= 0x00000020u; + } else { + _impl_._has_bits_[0] &= ~0x00000020u; + } + _impl_.saveapp_.SetAllocated(saveapp, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.saveapp_.IsDefault()) { + _impl_.saveapp_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.saveApp) +} + +// optional string saveUser = 9; +inline bool MiscInfoFile::_internal_has_saveuser() const { + bool value = (_impl_._has_bits_[0] & 0x00000040u) != 0; + return value; +} +inline bool MiscInfoFile::has_saveuser() const { + return _internal_has_saveuser(); +} +inline void MiscInfoFile::clear_saveuser() { + _impl_.saveuser_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000040u; +} +inline const std::string& MiscInfoFile::saveuser() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.saveUser) + return _internal_saveuser(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_saveuser(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000040u; + _impl_.saveuser_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.saveUser) +} +inline std::string* MiscInfoFile::mutable_saveuser() { + std::string* _s = _internal_mutable_saveuser(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.saveUser) + return _s; +} +inline const std::string& MiscInfoFile::_internal_saveuser() const { + return _impl_.saveuser_.Get(); +} +inline void MiscInfoFile::_internal_set_saveuser(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000040u; + _impl_.saveuser_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_saveuser() { + _impl_._has_bits_[0] |= 0x00000040u; + return _impl_.saveuser_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_saveuser() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.saveUser) + if (!_internal_has_saveuser()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000040u; + auto* p = _impl_.saveuser_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.saveuser_.IsDefault()) { + _impl_.saveuser_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_saveuser(std::string* saveuser) { + if (saveuser != nullptr) { + _impl_._has_bits_[0] |= 0x00000040u; + } else { + _impl_._has_bits_[0] &= ~0x00000040u; + } + _impl_.saveuser_.SetAllocated(saveuser, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.saveuser_.IsDefault()) { + _impl_.saveuser_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.saveUser) +} + +// optional string units = 10; +inline bool MiscInfoFile::_internal_has_units() const { + bool value = (_impl_._has_bits_[0] & 0x00000080u) != 0; + return value; +} +inline bool MiscInfoFile::has_units() const { + return _internal_has_units(); +} +inline void MiscInfoFile::clear_units() { + _impl_.units_.ClearToEmpty(); + _impl_._has_bits_[0] &= ~0x00000080u; +} +inline const std::string& MiscInfoFile::units() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.units) + return _internal_units(); +} +template +inline PROTOBUF_ALWAYS_INLINE +void MiscInfoFile::set_units(ArgT0&& arg0, ArgT... args) { + _impl_._has_bits_[0] |= 0x00000080u; + _impl_.units_.Set(static_cast(arg0), args..., GetArenaForAllocation()); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.units) +} +inline std::string* MiscInfoFile::mutable_units() { + std::string* _s = _internal_mutable_units(); + // @@protoc_insertion_point(field_mutable:Odb.Lib.Protobuf.MiscInfoFile.units) + return _s; +} +inline const std::string& MiscInfoFile::_internal_units() const { + return _impl_.units_.Get(); +} +inline void MiscInfoFile::_internal_set_units(const std::string& value) { + _impl_._has_bits_[0] |= 0x00000080u; + _impl_.units_.Set(value, GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::_internal_mutable_units() { + _impl_._has_bits_[0] |= 0x00000080u; + return _impl_.units_.Mutable(GetArenaForAllocation()); +} +inline std::string* MiscInfoFile::release_units() { + // @@protoc_insertion_point(field_release:Odb.Lib.Protobuf.MiscInfoFile.units) + if (!_internal_has_units()) { + return nullptr; + } + _impl_._has_bits_[0] &= ~0x00000080u; + auto* p = _impl_.units_.Release(); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.units_.IsDefault()) { + _impl_.units_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + return p; +} +inline void MiscInfoFile::set_allocated_units(std::string* units) { + if (units != nullptr) { + _impl_._has_bits_[0] |= 0x00000080u; + } else { + _impl_._has_bits_[0] &= ~0x00000080u; + } + _impl_.units_.SetAllocated(units, GetArenaForAllocation()); +#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING + if (_impl_.units_.IsDefault()) { + _impl_.units_.Set("", GetArenaForAllocation()); + } +#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING + // @@protoc_insertion_point(field_set_allocated:Odb.Lib.Protobuf.MiscInfoFile.units) +} + +// optional uint32 maxUniqueId = 11; +inline bool MiscInfoFile::_internal_has_maxuniqueid() const { + bool value = (_impl_._has_bits_[0] & 0x00000400u) != 0; + return value; +} +inline bool MiscInfoFile::has_maxuniqueid() const { + return _internal_has_maxuniqueid(); +} +inline void MiscInfoFile::clear_maxuniqueid() { + _impl_.maxuniqueid_ = 0u; + _impl_._has_bits_[0] &= ~0x00000400u; +} +inline uint32_t MiscInfoFile::_internal_maxuniqueid() const { + return _impl_.maxuniqueid_; +} +inline uint32_t MiscInfoFile::maxuniqueid() const { + // @@protoc_insertion_point(field_get:Odb.Lib.Protobuf.MiscInfoFile.maxUniqueId) + return _internal_maxuniqueid(); +} +inline void MiscInfoFile::_internal_set_maxuniqueid(uint32_t value) { + _impl_._has_bits_[0] |= 0x00000400u; + _impl_.maxuniqueid_ = value; +} +inline void MiscInfoFile::set_maxuniqueid(uint32_t value) { + _internal_set_maxuniqueid(value); + // @@protoc_insertion_point(field_set:Odb.Lib.Protobuf.MiscInfoFile.maxUniqueId) +} + #ifdef __GNUC__ #pragma GCC diagnostic pop #endif // __GNUC__ diff --git a/OdbDesignLib/enums.h b/OdbDesignLib/enums.h index 0f09453b..47a50353 100644 --- a/OdbDesignLib/enums.h +++ b/OdbDesignLib/enums.h @@ -5,7 +5,8 @@ namespace Odb::Lib enum class BoardSide { Top, - Bottom + Bottom, + Neither }; enum class LineShape diff --git a/OdbDesignLib/protoc/common.proto b/OdbDesignLib/protoc/common.proto new file mode 100644 index 00000000..b2cf1f25 --- /dev/null +++ b/OdbDesignLib/protoc/common.proto @@ -0,0 +1,13 @@ +syntax = "proto3"; + +//// https://protobuf.dev/reference/cpp/cpp-generated/#message +//option optimize_for = CODE_SIZE; + +package Odb.Lib.Protobuf; + +message PropertyRecord { + + optional string name = 1; + optional string value = 2; + repeated float floatValues = 3; +} \ No newline at end of file diff --git a/OdbDesignLib/protoc/componentsfile.proto b/OdbDesignLib/protoc/componentsfile.proto new file mode 100644 index 00000000..af307f2c --- /dev/null +++ b/OdbDesignLib/protoc/componentsfile.proto @@ -0,0 +1,63 @@ +syntax = "proto3"; + +//// https://protobuf.dev/reference/cpp/cpp-generated/#message +//option optimize_for = CODE_SIZE; + +import "common.proto"; +import "enums.proto"; + +package Odb.Lib.Protobuf; + +// +// EdaDataFile.h +// + +message ComponentsFile { + + message ComponentRecord { + + message ToeprintRecord { + + uint32 pinNumber = 1; + float locationX = 2; + float locationY = 3; + float rotation = 4; + bool mirror = 5; + uint32 netNumber = 6; + uint32 subnetNumber = 7; + string name = 8; + + } + + uint32 pkgRef = 1; + float locationX = 2; + float locationY = 3; + float rotation = 4; + bool mirror = 5; + string compName = 6; + string partName = 7; + string attributes = 8; + uint32 id = 9; + uint32 index = 10; + + repeated PropertyRecord propertyRecords = 11; + repeated ToeprintRecord toeprintRecords = 12; + + } + + string units = 1; + uint32 id = 2; + BoardSide side = 3; + string name = 4; + string path = 5; + string directory = 6; + + repeated string attributeNames = 7; + repeated string attributeTextValues = 8; + + repeated ComponentRecord componentRecords = 9; + map componentRecordsByName = 10; + + repeated PropertyRecord propertyRecords = 11; + map propertyRecordsByName = 12; +} \ No newline at end of file diff --git a/OdbDesignLib/protoc/edadatafile.proto b/OdbDesignLib/protoc/edadatafile.proto index e4c45cab..daf69fd4 100644 --- a/OdbDesignLib/protoc/edadatafile.proto +++ b/OdbDesignLib/protoc/edadatafile.proto @@ -3,6 +3,9 @@ syntax = "proto3"; //// https://protobuf.dev/reference/cpp/cpp-generated/#message //option optimize_for = CODE_SIZE; +import "common.proto"; +import "enums.proto"; + package Odb.Lib.Protobuf; // @@ -11,17 +14,18 @@ package Odb.Lib.Protobuf; message EdaDataFile { - enum BoardSide { - TOP = 0; - BOTTOM = 1; - }; - - message PropertyRecord { - - optional string name = 1; - optional string value = 2; - repeated float floatValues = 3; - } + message FeatureIdRecord { + + enum Type { + COPPER = 0; + LAMINATE = 1; + HOLE = 2; + }; + + optional Type type = 1; + optional uint32 layerNumber = 2; + optional uint32 featureNumber = 3; + }; message NetRecord { @@ -46,20 +50,7 @@ message EdaDataFile { RECTANGLE = 1; OCTAGON = 2; EXACT = 3; - }; - - message FeatureIdRecord { - - enum Type { - COPPER = 0; - LAMINATE = 1; - HOLE = 2; - }; - - optional Type type = 1; - optional uint32 layerNumber = 2; - optional uint32 featureNumber = 3; - }; + }; // common subnet fields optional Type type = 1; @@ -135,6 +126,14 @@ message EdaDataFile { } } + message FeatureGroupRecord { + + optional string type = 1; + + repeated PropertyRecord propertyRecords = 2; + repeated FeatureIdRecord featureIdRecords = 3; + } + optional string path = 1; optional string units = 2; optional string source = 3; @@ -145,4 +144,6 @@ message EdaDataFile { map netRecordsByName = 8; repeated PackageRecord packageRecords = 9; map packageRecordsByName = 10; + repeated PropertyRecord propertyRecords = 11; + repeated FeatureGroupRecord featureGroupRecords = 12; } \ No newline at end of file diff --git a/OdbDesignLib/protoc/enums.proto b/OdbDesignLib/protoc/enums.proto new file mode 100644 index 00000000..5f394132 --- /dev/null +++ b/OdbDesignLib/protoc/enums.proto @@ -0,0 +1,25 @@ +syntax = "proto3"; + +//// https://protobuf.dev/reference/cpp/cpp-generated/#message +//option optimize_for = CODE_SIZE; + +package Odb.Lib.Protobuf; + +enum BoardSide +{ + Top = 0; + Bottom = 1; + Neither = 2; +}; + +enum LineShape +{ + Square = 0; + Round = 1; +}; + +enum Polarity +{ + Positive = 0; + Negative = 1; +}; \ No newline at end of file diff --git a/OdbDesignLib/protoc/matrixfile.proto b/OdbDesignLib/protoc/matrixfile.proto index f5186ca5..bd55f09b 100644 --- a/OdbDesignLib/protoc/matrixfile.proto +++ b/OdbDesignLib/protoc/matrixfile.proto @@ -2,10 +2,75 @@ syntax = "proto3"; package Odb.Lib.Protobuf; +//import "google/color.proto"; +import "enums.proto"; + // // MatrixFile.h // message MatrixFile { + message StepRecord { + + uint32 column = 1; + uint32 id = 2; + string name = 3; + } + + message LayerRecord { + + enum Type { + Signal = 0; + PowerGround = 1; + Dielectric = 2; + Mixed = 3; + SolderMask = 4; + SolderPaste = 5; + SilkScreen = 6; + Drill = 7; + Rout = 8; + Document = 9; + Component = 10; + Mask = 11; + ConductivePaste = 12; + } + + enum Context { + Board = 0; + Misc = 1; + } + + enum DielectricType { + None = 0; + Prepreg = 1; + Core = 2; + } + + enum Form { + Rigid = 0; + Flex = 1; + } + + uint32 row = 1; + Context context = 2; + Type type = 3; + string name = 4; + Polarity polarity = 5; + DielectricType dielectricType = 6; + string dielectricName = 7; + Form form = 8; + uint32 cuTop = 9; + uint32 cuBottom = 10; + uint32 ref = 11; + string startName = 12; + string endName = 13; + string oldName = 14; + string addType = 15; + //google. color = 16; + uint32 id = 17; + } + + repeated StepRecord steps = 1; + repeated LayerRecord layers = 2; } \ No newline at end of file diff --git a/OdbDesignLib/protoc/miscinfofile.proto b/OdbDesignLib/protoc/miscinfofile.proto index 0147f308..01e7beb5 100644 --- a/OdbDesignLib/protoc/miscinfofile.proto +++ b/OdbDesignLib/protoc/miscinfofile.proto @@ -2,11 +2,25 @@ syntax = "proto3"; package Odb.Lib.Protobuf; +import "google/protobuf/timestamp.proto"; + // // MiscInfoFile.h // message MiscInfoFile { + optional string productModelName = 1; + optional string jobName = 2; + optional string odbVersionMajor = 3; + optional string odbVersionMinor = 4; + optional string odbSource = 5; + optional google.protobuf.Timestamp creationDateDate = 6; + optional google.protobuf.Timestamp saveDate = 7; + optional string saveApp = 8; + optional string saveUser = 9; + optional string units = 10; + optional uint32 maxUniqueId = 11; + } diff --git a/OdbDesignServer/Controllers/StepsEdaDataController.cpp b/OdbDesignServer/Controllers/StepsEdaDataController.cpp index 58deb283..3a8010be 100644 --- a/OdbDesignServer/Controllers/StepsEdaDataController.cpp +++ b/OdbDesignServer/Controllers/StepsEdaDataController.cpp @@ -29,6 +29,12 @@ namespace Odb::App::Server return this->steps_edadata_route_handler(designName, stepName, req); }); + CROW_ROUTE(m_serverApp.crow_app(), "/filemodel/") + ([&](const crow::request& req, std::string designName) + { + return this->designs_route_handler(designName, req); + }); + //app.route_dynamic(url) //register_route_handler("/steps/edadata/package_records", std::bind(&StepsEdaDataController::steps_edadata_route_handler, this, std::placeholders::_1)); @@ -75,4 +81,23 @@ namespace Odb::App::Server auto& edaDataFile = step->GetEdaDataFile(); return crow::response(JsonCrowReturnable(edaDataFile)); } + + crow::response StepsEdaDataController::designs_route_handler(const std::string& designName, const crow::request& req) + { + auto designNameDecoded = UrlEncoding::decode(designName); + if (designNameDecoded.empty()) + { + return crow::response(crow::status::BAD_REQUEST, "design name not specified"); + } + + auto pFileArchive = m_serverApp.designs().GetFileArchive(designNameDecoded); + if (pFileArchive == nullptr) + { + std::stringstream ss; + ss << "design: \"" << designNameDecoded << "\" not found"; + return crow::response(crow::status::NOT_FOUND, ss.str()); + } + + return crow::response(JsonCrowReturnable(*pFileArchive)); + } } diff --git a/OdbDesignServer/Controllers/StepsEdaDataController.h b/OdbDesignServer/Controllers/StepsEdaDataController.h index 18b0b32d..db31af67 100644 --- a/OdbDesignServer/Controllers/StepsEdaDataController.h +++ b/OdbDesignServer/Controllers/StepsEdaDataController.h @@ -19,5 +19,8 @@ class StepsEdaDataController : public Odb::Lib::App::RouteController const std::string& stepName, const crow::request& req); + crow::response designs_route_handler(const std::string& designName, + const crow::request& req); + }; } diff --git a/OdbDesignTests/CMakeLists.txt b/OdbDesignTests/CMakeLists.txt index 3a27a32e..5c4bb224 100644 --- a/OdbDesignTests/CMakeLists.txt +++ b/OdbDesignTests/CMakeLists.txt @@ -4,11 +4,10 @@ enable_testing() add_executable(OdbDesignTests - OdbDesignTests.h - - "FileArchiveLoadFixture.h" "FileArchiveLoadFixture.cpp" - "FileArchiveLoadTests.cpp" - "TestTests.cpp") + "Fixtures/FileArchiveLoadFixture.h" + "Fixtures/FileArchiveLoadFixture.cpp" + "FileArchiveLoadTests.cpp" + "TestTests.cpp" "DesignLoadTests.cpp" "Fixtures/DesignNameValueParamTest.h" ) target_link_libraries(OdbDesignTests PRIVATE GTest::gtest_main) diff --git a/OdbDesignTests/DesignLoadTests.cpp b/OdbDesignTests/DesignLoadTests.cpp new file mode 100644 index 00000000..47041c74 --- /dev/null +++ b/OdbDesignTests/DesignLoadTests.cpp @@ -0,0 +1,22 @@ +#include +#include "Fixtures/FileArchiveLoadFixture.h" +#include "OdbDesign.h" + +//using namespace Odb::Lib::App; +using namespace Odb::Lib::FileModel; +using namespace Odb::Test::Fixtures; + +namespace Odb::Test +{ + TEST_F(FileArchiveLoadFixture, Load_Design_Succeeds_sample_design_tgz) + { + auto pDesign = m_pDesignCache->GetDesign("sample_design"); + ASSERT_NE(pDesign, nullptr); + } + + TEST_F(FileArchiveLoadFixture, Load_Design_Succeeds_designodb_rigidflex_tgz) + { + auto pDesign = m_pDesignCache->GetDesign("designodb_rigidflex"); + ASSERT_NE(pDesign, nullptr); + } +} \ No newline at end of file diff --git a/OdbDesignTests/FileArchiveLoadTests.cpp b/OdbDesignTests/FileArchiveLoadTests.cpp index b11b9507..455b6aa9 100644 --- a/OdbDesignTests/FileArchiveLoadTests.cpp +++ b/OdbDesignTests/FileArchiveLoadTests.cpp @@ -1,9 +1,10 @@ #include -#include "FileArchiveLoadFixture.h" +#include "Fixtures/FileArchiveLoadFixture.h" #include "OdbDesign.h" //using namespace Odb::Lib::App; using namespace Odb::Lib::FileModel; +using namespace Odb::Test::Fixtures; namespace Odb::Test { @@ -19,19 +20,7 @@ namespace Odb::Test #endif #if (RUN_SUCCEEDING_TESTS || RUN_ALL_TESTS) - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_Turbot_zip) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("Turbot"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_35041017_rev1_odbjob_v7_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("350-41017_rev1_odbjob_v7"); - ASSERT_NE(pFileArchive, nullptr); - } - + TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_sample_design_tgz) { auto pFileArchive = m_pDesignCache->GetFileArchive("sample_design"); @@ -44,87 +33,7 @@ namespace Odb::Test ASSERT_NE(pFileArchive, nullptr); } - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_200_40628_Rev1_v7_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("200-40628_Rev1_v7"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_odb_zip) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("odb"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_Panel__Demo1210_zip) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("Panel - Demo1210"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_Panel__g7162_31800_odb_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("Panel - g7162-31800_odb"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_3_1712_xxa00odb_zip) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("3.1712.xxa00odb"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_ap50132476_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("ap50132476"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_comav331NEW_DFT_DFT_TGZ) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("comav331NEW_DFT_DFT"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_design_1_no_bom_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("design_1_no_bom"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_designodb_zip) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("designodb"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_kitara_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("kitara"); - ASSERT_NE(pFileArchive, nullptr); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_PAB_SAYISAL_KART_RevX2_tgz) - { - auto pFileArchive = m_pDesignCache->GetFileArchive("PAB_SAYISAL_KART_RevX2"); - ASSERT_NE(pFileArchive, nullptr); - } - -#endif // (RUN_SUCCEEDING_TESTS || RUN_ALL_TESTS) - - //TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_Panel__Demo1230_tgz) - //{ - // auto pFileArchive = m_pDesignCache->GetFileArchive("Panel - Demo1230"); - // ASSERT_NE(pFileArchive, nullptr); - //} - - //TEST_F(FileArchiveLoadFixture, Load_FileArchive_Succeeds_designodb_zip) - //{ - // auto pFileArchive = m_pDesignCache->GetFileArchive("designodb"); - // ASSERT_NE(pFileArchive, nullptr); - //} - - +#endif // (RUN_SUCCEEDING_TESTS || RUN_ALL_TESTS) // // Fails @@ -132,71 +41,60 @@ namespace Odb::Test #if (RUN_FAILING_TESTS || RUN_ALL_TESTS) - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_pcb_1039N05890_v02_tar) + TEST_F(FileArchiveLoadFixture, Load_FileArchive_Missing_Standard_Fonts_File_Throws_InvalidOdbError) { // assert throws invalid_odb_error b/c missing fonts/standard file EXPECT_THROW( { - auto pFileArchive = m_pDesignCache->GetFileArchive("pcb_1039N05890_v02"); + auto pFileArchive = m_pDesignCache->GetFileArchive("designodb_rigidflex - missing_fonts_standard"); }, invalid_odb_error); } - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_odb1_zip) + TEST_F(FileArchiveLoadFixture, Load_FileArchive_Missing_Misc_Info_File_Throws_InvalidOdbError) { // throws invalid_odb_error because missing misc/info file EXPECT_THROW( { - auto pFileArchive = m_pDesignCache->GetFileArchive("odb1"); - }, - invalid_odb_error); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_3687504951_zip) - { - // throws invalid_odb_error because missing misc/info file - EXPECT_THROW( - { - auto pFileArchive = m_pDesignCache->GetFileArchive("3687504951"); - }, - invalid_odb_error); - } - - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_dft_zip) - { - // throws invalid_odb_error because missing misc/info file - EXPECT_THROW( - { - auto pFileArchive = m_pDesignCache->GetFileArchive("dft"); + auto pFileArchive = m_pDesignCache->GetFileArchive("designodb_rigidflex - missing_misc_info"); }, invalid_odb_error); } - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_Panel__Demo1230_tgz) + TEST_F(FileArchiveLoadFixture, Load_FileArchive_InvalidPinElectricalType_Throws_ParseError) { // throws parse_error because: // //Parse Error: //current file : [data:73383] - //current line : [PIN PIN_61 T - 14.1 0 0 N R ID = 3996] + //current line : [PIN PIN_61 T -14.1 0 0 N R ID=3996] + // ~^~ //current token : [N] //location : EdaDataFile.cpp : 824 EXPECT_THROW( { - auto pFileArchive = m_pDesignCache->GetFileArchive("Panel - Demo1230"); + auto pFileArchive = m_pDesignCache->GetFileArchive("designodb_rigidflex - pin_invalid_electricaltype"); }, parse_error); } - TEST_F(FileArchiveLoadFixture, Load_FileArchive_Fails_Panel_Turbot_odb_panel_tgz) + TEST_F(FileArchiveLoadFixture, Load_FileArchive_InvalidPinType_Throws_ParseError) { - // TODO: throws parse_error because ??? + // throws parse_error because: + // + //Parse Error : + //current file : [designs\Panel - Rotation Test Board\Panel - Rotation Test Board\steps\rotation - test - board\eda\data\data:180] + //current line : [PIN 1 U -0.3984522 -0.0977426 0 U U ID=30] + // ~^~ + //current token : [U] + //location : EdaDataFile.cpp : 790 + EXPECT_THROW( { - auto pFileArchive = m_pDesignCache->GetFileArchive("Turbot_odb_panel"); + auto pFileArchive = m_pDesignCache->GetFileArchive("designodb_rigidflex - pin_invalid_type"); }, - parse_error); + parse_error); } #endif // (RUN_FAILING_TESTS || RUN_ALL_TESTS) diff --git a/OdbDesignTests/Fixtures/DesignNameValueParamTest.h b/OdbDesignTests/Fixtures/DesignNameValueParamTest.h new file mode 100644 index 00000000..b0bbcf04 --- /dev/null +++ b/OdbDesignTests/Fixtures/DesignNameValueParamTest.h @@ -0,0 +1,17 @@ +#pragma once + +#include "gtest/gtest.h" +#include +#include "OdbDesign.h" +#include +#include +#include "FileArchiveLoadFixture.h" + +namespace Odb::Test::Fixtures +{ + class DesignNameValueParamTest : public FileArchiveLoadFixture, + public testing::WithParamInterface + { + + }; +} \ No newline at end of file diff --git a/OdbDesignTests/FileArchiveLoadFixture.cpp b/OdbDesignTests/Fixtures/FileArchiveLoadFixture.cpp similarity index 54% rename from OdbDesignTests/FileArchiveLoadFixture.cpp rename to OdbDesignTests/Fixtures/FileArchiveLoadFixture.cpp index a6325f84..db2de856 100644 --- a/OdbDesignTests/FileArchiveLoadFixture.cpp +++ b/OdbDesignTests/Fixtures/FileArchiveLoadFixture.cpp @@ -2,10 +2,10 @@ #include using namespace std::filesystem; -using namespace Odb::Lib; +//using namespace Odb::Lib; using namespace Odb::Lib::App; -namespace Odb::Test +namespace Odb::Test::Fixtures { FileArchiveLoadFixture::FileArchiveLoadFixture() : m_testDataDir() @@ -28,8 +28,8 @@ namespace Odb::Test std::string FileArchiveLoadFixture::getTestDataDir() { auto szTestDataDir = std::getenv("ODB_TEST_DATA_DIR"); - if (szTestDataDir == nullptr) throw std::runtime_error("ODB_TEST_DATA_DIR environment variable is not set"); - if (!exists(szTestDataDir)) throw std::runtime_error("ODB_TEST_DATA_DIR environment variable is set to a non-existent directory"); + //if (szTestDataDir == nullptr) throw std::runtime_error("ODB_TEST_DATA_DIR environment variable is not set"); + //if (!exists(szTestDataDir)) throw std::runtime_error("ODB_TEST_DATA_DIR environment variable is set to a non-existent directory"); return szTestDataDir; } @@ -37,29 +37,17 @@ namespace Odb::Test { if (m_removeDecompressedDirectories) { - //if (!m_pDesignCache->getLoadedDesignNames().empty()) - //{ - // for (const auto& loadedName : m_pDesignCache->getLoadedFileArchiveNames()) - // { - // if (is_directory(getDesignPath(loadedName))) - // { - // remove_all(getDesignPath(loadedName)); - // } - // } - //} - //else - //{ - - // delete uncompressed directories - for (const auto& entry : directory_iterator(m_testDataDir)) + if (exists(m_testDataDir)) { - if (is_directory(entry)) + // delete uncompressed directories + for (const auto& entry : directory_iterator(m_testDataDir)) { - remove_all(entry.path()); + if (is_directory(entry)) + { + remove_all(entry.path()); + } } } - - //} } } diff --git a/OdbDesignTests/FileArchiveLoadFixture.h b/OdbDesignTests/Fixtures/FileArchiveLoadFixture.h similarity index 94% rename from OdbDesignTests/FileArchiveLoadFixture.h rename to OdbDesignTests/Fixtures/FileArchiveLoadFixture.h index 7ec3c8b4..17ec34c9 100644 --- a/OdbDesignTests/FileArchiveLoadFixture.h +++ b/OdbDesignTests/Fixtures/FileArchiveLoadFixture.h @@ -6,7 +6,7 @@ #include #include -namespace Odb::Test +namespace Odb::Test::Fixtures { class FileArchiveLoadFixture : public ::testing::Test { diff --git a/OdbDesignTests/OdbDesignTests.cpp b/OdbDesignTests/OdbDesignTests.cpp deleted file mode 100644 index da75db89..00000000 --- a/OdbDesignTests/OdbDesignTests.cpp +++ /dev/null @@ -1,5 +0,0 @@ -// OdbDesignTests.cpp : Source file for your target. -// - -#include "OdbDesignTests.h" - diff --git a/OdbDesignTests/OdbDesignTests.h b/OdbDesignTests/OdbDesignTests.h deleted file mode 100644 index 7da85ccc..00000000 --- a/OdbDesignTests/OdbDesignTests.h +++ /dev/null @@ -1,3 +0,0 @@ -// OdbDesignTests.h : Header file for your target. - -#pragma once diff --git a/OdbDesignTests/TestTests.cpp b/OdbDesignTests/TestTests.cpp index 5b286326..211fa881 100644 --- a/OdbDesignTests/TestTests.cpp +++ b/OdbDesignTests/TestTests.cpp @@ -1,8 +1,9 @@ #include -#include "FileArchiveLoadFixture.h" +#include "Fixtures/FileArchiveLoadFixture.h" #include using namespace std::filesystem; +using namespace Odb::Test::Fixtures; namespace Odb::Test { diff --git a/Utils/CommandLineArgs.cpp b/Utils/CommandLineArgs.cpp index 3e68ed4b..857dc086 100644 --- a/Utils/CommandLineArgs.cpp +++ b/Utils/CommandLineArgs.cpp @@ -7,11 +7,14 @@ #include "CommandLineArgs.h" #include "CommandLineArgs.h" #include "CommandLineArgs.h" +#include "CommandLineArgs.h" +#include "CommandLineArgs.h" #include #include #include "str_trim.h" #include #include +#include namespace Utils @@ -90,6 +93,17 @@ namespace Utils return executable().filename().string(); } + bool CommandLineArgs::isWindows() const + { + auto pos = executableName().find(EXE_EXTENSION); + return (pos >= 0 && pos == executableName().length()-strlen(EXE_EXTENSION)); + } + + bool CommandLineArgs::isLinux() const + { + return !isWindows(); + } + std::string CommandLineArgs::getArgValue(const std::string& name) const { auto findIt = m_mapArguments.find(name); diff --git a/Utils/CommandLineArgs.h b/Utils/CommandLineArgs.h index d7da740d..551cfe4b 100644 --- a/Utils/CommandLineArgs.h +++ b/Utils/CommandLineArgs.h @@ -25,6 +25,9 @@ namespace Utils std::filesystem::path executableDirectory() const; std::string executableName() const; + bool isWindows() const; + bool isLinux() const; + void printUsage() const; protected: @@ -38,6 +41,7 @@ namespace Utils virtual std::string getUsageString() const = 0; const char* EXECUTABLE_ARG_NAME = "executable"; + const char* EXE_EXTENSION = ".exe"; }; } diff --git a/Utils/Logger.cpp b/Utils/Logger.cpp index ad542ac6..deef7e8e 100644 --- a/Utils/Logger.cpp +++ b/Utils/Logger.cpp @@ -13,7 +13,7 @@ namespace Utils : m_level(Level::Info) , m_logFilename(DEFAULT_LOG_FILENAME) , m_outputTypes(OutputTypes::StdOut | OutputTypes::File) - , m_logFileStream(m_logFilename, std::ios::out | std::ios::app) + //, m_logFileStream(m_logFilename, std::ios::out | std::ios::app) , m_logMessageLoop([&](Message& message) { return this->logMessage(message); @@ -173,9 +173,17 @@ namespace Utils if (m_outputTypes & OutputTypes::StdOut) std::cout << message << std::flush; if (m_outputTypes & OutputTypes::StdErr) std::cerr << message << std::flush; - if (m_outputTypes & OutputTypes::File) m_logFileStream << message << std::flush; - // TODO: open log file and close on each write? - + if (m_outputTypes & OutputTypes::File) + { + m_logFileStream.open(m_logFilename, std::ios::out | std::ios::app); + if (m_logFileStream) + { + m_logFileStream << message << std::flush; + m_logFileStream.flush(); + m_logFileStream.close(); + } + } + return true; }