Project

General

Profile

Idea #13972

Idea #8954: New geometry features

New Geometry Feature subtask - iterators to subsets of geometry elements

Added by Katherine Lato about 3 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Low
Category:
Geometry
Target version:
-
Start date:
09/29/2016
Due date:
% Done:

100%

Estimated time:
20.00 h
Spent time:
Experiment:
-
Duration:

Description

iterators to subsets of geometry elements (e.g. GeometryCore::IterateWires(geo::TPCID const&))


Related issues

Related to LArSoft - Task #14705: Preparatory work for drift direction supportClosed11/04/2016

Associated revisions

Revision ebd29848 (diff)
Added by Gianluca Petrillo over 2 years ago

Added "local" iterators for all readout IDs.

This solves issue #13972.

Revision b98b918f (diff)
Added by Gianluca Petrillo over 2 years ago

Added "local" iterators for all readout IDs.

This solves issue #13972.

History

#1 Updated by Gianluca Petrillo about 3 years ago

  • % Done changed from 0 to 30
  • Estimated time set to 20.00 h

Part of this was implemented in geo::PlaneGeo, currently in a private feature branch.

#2 Updated by Gianluca Petrillo about 3 years ago

  • Related to Task #14705: Preparatory work for drift direction support added

#3 Updated by Gianluca Petrillo over 2 years ago

  • % Done changed from 30 to 50

Added iterators to all TPCs and to all planes of a cryostat, plus the necessary infrastructure.
I will slowly fill the rest...

#4 Updated by Gianluca Petrillo over 2 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 50 to 100
The added infrastructure in geo::GeometryCore includes:
  • methods to get the "begin" and "end" ID (TPC, wire plane, wire, TPC set or readout plane) within a geometry element (cryostat, TPC, wire plane and TPC set, whichever apply)
  • methods to return an iterator (with similar meaning to the "begin" and "end" ID above)
  • methods to return objects for range-for loops ("iterator boxes") on subsets of detector elements
  • methods to increment any type of ID by a single detector element

Iterators and iterator boxes are provided for geometry IDs (e.g. geo::PlaneID) and, where it applies, also for geometry element objects (e.g. geo::PlaneGeo).

As usual, everything is documented in Doxygen (with a few examples) and unit tests are provided.

#5 Updated by Gianluca Petrillo over 2 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF