From 1e575ddf3fe461b0a48eb050f27f2f7e670050d6 Mon Sep 17 00:00:00 2001 From: leggett <leggett@cern.ch> Date: Fri, 13 Mar 2020 13:39:09 -0700 Subject: [PATCH 1/3] Seedfinder test: specify input file on command line, quiet output --- Tests/UnitTests/Core/Seeding/CMakeLists.txt | 1 + .../UnitTests/Core/Seeding/SeedfinderTest.cpp | 76 +++++++++++++++---- 2 files changed, 61 insertions(+), 16 deletions(-) diff --git a/Tests/UnitTests/Core/Seeding/CMakeLists.txt b/Tests/UnitTests/Core/Seeding/CMakeLists.txt index c5d4b2556..db82ffe74 100644 --- a/Tests/UnitTests/Core/Seeding/CMakeLists.txt +++ b/Tests/UnitTests/Core/Seeding/CMakeLists.txt @@ -1,2 +1,3 @@ add_executable(SeedfinderTest SeedfinderTest.cpp) +add_definitions(-Wno-implicit-fallthrough) target_link_libraries(SeedfinderTest PRIVATE ActsCore Boost::boost) diff --git a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp index 22964c143..c3e1ca1c6 100644 --- a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp +++ b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp @@ -66,9 +66,51 @@ std::vector<const SpacePoint*> readFile(std::string filename) { return readSP; } -int main() { - std::vector<const SpacePoint*> spVec = readFile("sp.txt"); - std::cout << "size of read SP: " << spVec.size() << std::endl; +int main(int argc, char** argv) { + + std::string file {"sp.txt"}; + bool help(false); + bool quiet(false); + + int opt; + while ((opt = getopt(argc, argv, "hf:q")) != -1) { + switch (opt) { + case 'f': + file = optarg; + break; + case 'q': + quiet = true; + break; + case 'h': + help = true; + default: /* '?' */ + std::cerr << "Usage: " << argv[0] + << " [-hq] [-f FILENAME]\n"; + if (help) { + std::cout << " -h : this help" << std::endl; + std::cout << " -f FILE : read spacepoints from FILE. Default is \"" + << file << "\"" << std::endl; + std::cout << " -q : don't print out all found seeds" << std::endl; + } + + exit(EXIT_FAILURE); + } + } + + std::ifstream f(file); + if(!f.good()) { + std::cerr << "input file \"" << file << "\" does not exist\n"; + exit(EXIT_FAILURE); + } + + auto start_read = std::chrono::system_clock::now(); + std::vector<const SpacePoint*> spVec = readFile(file); + auto end_read = std::chrono::system_clock::now(); + std::chrono::duration<double> elapsed_read = end_read - start_read; + + std::cout << "read " << spVec.size() << " SP from file " << file + << " in " << elapsed_read.count() << "s" + << std::endl; Acts::SeedfinderConfig<SpacePoint> config; // silicon detector max @@ -138,19 +180,21 @@ int main() { numSeeds += outVec.size(); } std::cout << "Number of seeds generated: " << numSeeds << std::endl; - for (auto& regionVec : seedVector) { - for (size_t i = 0; i < regionVec.size(); i++) { - const Acts::Seed<SpacePoint>* seed = ®ionVec[i]; - const SpacePoint* sp = seed->sp()[0]; - std::cout << " (" << sp->x() << ", " << sp->y() << ", " << sp->z() - << ") "; - sp = seed->sp()[1]; - std::cout << sp->surface << " (" << sp->x() << ", " << sp->y() << ", " - << sp->z() << ") "; - sp = seed->sp()[2]; - std::cout << sp->surface << " (" << sp->x() << ", " << sp->y() << ", " - << sp->z() << ") "; - std::cout << std::endl; + if (!quiet) { + for (auto& regionVec : seedVector) { + for (size_t i = 0; i < regionVec.size(); i++) { + const Acts::Seed<SpacePoint>* seed = ®ionVec[i]; + const SpacePoint* sp = seed->sp()[0]; + std::cout << " (" << sp->x() << ", " << sp->y() << ", " << sp->z() + << ") "; + sp = seed->sp()[1]; + std::cout << sp->surface << " (" << sp->x() << ", " << sp->y() << ", " + << sp->z() << ") "; + sp = seed->sp()[2]; + std::cout << sp->surface << " (" << sp->x() << ", " << sp->y() << ", " + << sp->z() << ") "; + std::cout << std::endl; + } } } return 0; -- GitLab From fde5374b76338a2fef511483b88d92627870c5e5 Mon Sep 17 00:00:00 2001 From: leggett <leggett@cern.ch> Date: Sat, 14 Mar 2020 13:53:26 -0700 Subject: [PATCH 2/3] apply formatting artifacts --- .../UnitTests/Core/Seeding/SeedfinderTest.cpp | 55 +++++++++---------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp index c3e1ca1c6..06ea52381 100644 --- a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp +++ b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp @@ -67,50 +67,49 @@ std::vector<const SpacePoint*> readFile(std::string filename) { } int main(int argc, char** argv) { - - std::string file {"sp.txt"}; + std::string file{"sp.txt"}; bool help(false); bool quiet(false); int opt; while ((opt = getopt(argc, argv, "hf:q")) != -1) { switch (opt) { - case 'f': - file = optarg; - break; - case 'q': - quiet = true; - break; - case 'h': - help = true; - default: /* '?' */ - std::cerr << "Usage: " << argv[0] - << " [-hq] [-f FILENAME]\n"; - if (help) { - std::cout << " -h : this help" << std::endl; - std::cout << " -f FILE : read spacepoints from FILE. Default is \"" - << file << "\"" << std::endl; - std::cout << " -q : don't print out all found seeds" << std::endl; - } - - exit(EXIT_FAILURE); + case 'f': + file = optarg; + break; + case 'q': + quiet = true; + break; + case 'h': + help = true; + default: /* '?' */ + std::cerr << "Usage: " << argv[0] << " [-hq] [-f FILENAME]\n"; + if (help) { + std::cout << " -h : this help" << std::endl; + std::cout + << " -f FILE : read spacepoints from FILE. Default is \"" + << file << "\"" << std::endl; + std::cout << " -q : don't print out all found seeds" + << std::endl; + } + + exit(EXIT_FAILURE); } } std::ifstream f(file); - if(!f.good()) { + if (!f.good()) { std::cerr << "input file \"" << file << "\" does not exist\n"; exit(EXIT_FAILURE); - } + } - auto start_read = std::chrono::system_clock::now(); + auto start_read = std::chrono::system_clock::now(); std::vector<const SpacePoint*> spVec = readFile(file); - auto end_read = std::chrono::system_clock::now(); + auto end_read = std::chrono::system_clock::now(); std::chrono::duration<double> elapsed_read = end_read - start_read; - std::cout << "read " << spVec.size() << " SP from file " << file - << " in " << elapsed_read.count() << "s" - << std::endl; + std::cout << "read " << spVec.size() << " SP from file " << file << " in " + << elapsed_read.count() << "s" << std::endl; Acts::SeedfinderConfig<SpacePoint> config; // silicon detector max -- GitLab From 36b8920a70d31268074cbe18b8b7d050cfd1729b Mon Sep 17 00:00:00 2001 From: leggett <leggett@cern.ch> Date: Tue, 17 Mar 2020 09:46:36 -0700 Subject: [PATCH 3/3] use [[fallthrough]] instead of suppressing warning --- Tests/UnitTests/Core/Seeding/CMakeLists.txt | 1 - Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/Tests/UnitTests/Core/Seeding/CMakeLists.txt b/Tests/UnitTests/Core/Seeding/CMakeLists.txt index db82ffe74..c5d4b2556 100644 --- a/Tests/UnitTests/Core/Seeding/CMakeLists.txt +++ b/Tests/UnitTests/Core/Seeding/CMakeLists.txt @@ -1,3 +1,2 @@ add_executable(SeedfinderTest SeedfinderTest.cpp) -add_definitions(-Wno-implicit-fallthrough) target_link_libraries(SeedfinderTest PRIVATE ActsCore Boost::boost) diff --git a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp index 06ea52381..1db1a29f0 100644 --- a/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp +++ b/Tests/UnitTests/Core/Seeding/SeedfinderTest.cpp @@ -82,6 +82,7 @@ int main(int argc, char** argv) { break; case 'h': help = true; + [[fallthrough]]; default: /* '?' */ std::cerr << "Usage: " << argv[0] << " [-hq] [-f FILENAME]\n"; if (help) { -- GitLab