Partition also containing data directly. More...
#include <Partitions.h>
Public Types | |
using | Base_t = Partition< Data > |
Base class. More... | |
using | Partition_t = Partition< Data > |
Base type of the partition. More... | |
using | Data_t = typename Partition_t::Data_t |
Type of contained data. More... | |
using | Area_t = typename Partition_t::Area_t |
Type of covered area. More... | |
Public Types inherited from geo::part::Partition< Data > | |
using | Data_t = Data |
Type of data stored in the partition. More... | |
using | Partition_t = Partition< Data > |
This type. More... | |
using | Area_t = PartitionBase::Area_t |
Type of area. More... | |
using | Subpartitions_t = std::vector< std::unique_ptr< Partition_t const >> |
Type of list of subpartitions. It needs to preserve polymorphism. More... | |
Public Types inherited from geo::part::PartitionBase | |
using | Area_t = AreaOwner::Area_t |
using | AreaRangeMember_t = AreaOwner::AreaRangeMember_t |
Public Types inherited from geo::part::AreaOwner | |
using | Area_t = lar::util::simple_geo::Rectangle< double > |
Type of area covered by the partition. More... | |
using | AreaRangeMember_t = Area_t::Range_t(Area_t::*) |
Type of pointer to Area_t data member of type Range_t. More... | |
Public Member Functions | |
PartitionWithData (Area_t const &area, Data_t *myData) | |
Constructor: sets the covered area and the contained datum. More... | |
virtual Data_t * | data () const override |
Returns the datum directly stored (nullptr if none). More... | |
virtual Data_t * | atPoint (double w, double d) const override |
Returns stored datum only if point is covered, nullptr otherwise. More... | |
Public Member Functions inherited from geo::part::Partition< Data > | |
Partition (Area_t const &area) | |
Constructor: sets the covered area and no subpartitions. More... | |
virtual | ~Partition ()=default |
Destructor (default, virtual). More... | |
std::string | describe (std::string indent, std::string firstIndent) const |
Returns a description of the partition. More... | |
std::string | describe (std::string indent="") const |
Returns a description of the partition. More... | |
template<typename Pred > | |
void | walk (Pred &&pred) const |
Applies pred to all partitions. More... | |
std::size_t | nParts () const |
Returns the number of subparts in the partition (0 if simple element). More... | |
Public Member Functions inherited from geo::part::PartitionBase | |
PartitionBase (Area_t const &area) | |
Constructor: sets the covered area and no subpartitions. More... | |
Public Member Functions inherited from geo::part::AreaOwner | |
AreaOwner (Area_t const &area) | |
Constructor: sets the covered area and no subpartitions. More... | |
bool | contains (double w, double d) const |
Returns whether the specified point is covered by this object. More... | |
Area_t const & | area () const |
Returns the covered area. More... | |
template<typename Stream > | |
void | dumpArea (Stream &&out) const |
Output the owned area into an output stream. More... | |
Private Member Functions | |
virtual std::string | doDescribe (std::string indent, std::string firstIndent) const override |
Returns a description of the partition. More... | |
Private Attributes | |
Data_t * | myData |
The contained datum. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from geo::part::Partition< Data > | |
virtual Subpartitions_t const & | parts () const |
Returns a list of all subpartitions. More... | |
Protected Member Functions inherited from geo::part::PartitionBase | |
std::string | describeArea (std::string indent, std::string firstIndent) const |
Returns a description of the partition area. More... | |
Static Protected Member Functions inherited from geo::part::Partition< Data > | |
template<typename Pred > | |
static void | walk (Partition_t const *start, Pred &&pred) |
Static Protected Attributes inherited from geo::part::Partition< Data > | |
static Subpartitions_t const | NoSubparts |
Subpartitions (if any). More... | |
Partition also containing data directly.
Definition at line 275 of file Partitions.h.
using geo::part::PartitionWithData< Data >::Area_t = typename Partition_t::Area_t |
Type of covered area.
Definition at line 281 of file Partitions.h.
using geo::part::PartitionWithData< Data >::Base_t = Partition<Data> |
Base class.
Definition at line 278 of file Partitions.h.
using geo::part::PartitionWithData< Data >::Data_t = typename Partition_t::Data_t |
Type of contained data.
Definition at line 280 of file Partitions.h.
using geo::part::PartitionWithData< Data >::Partition_t = Partition<Data> |
Base type of the partition.
Definition at line 279 of file Partitions.h.
|
inline |
Constructor: sets the covered area and the contained datum.
Definition at line 284 of file Partitions.h.
|
inlineoverridevirtual |
Returns stored datum only if point is covered, nullptr
otherwise.
Implements geo::part::Partition< Data >.
Reimplemented in geo::part::PartitionContainer< Data >.
Definition at line 292 of file Partitions.h.
|
inlineoverridevirtual |
Returns the datum directly stored (nullptr if none).
Reimplemented from geo::part::Partition< Data >.
Definition at line 289 of file Partitions.h.
|
overrideprivatevirtual |
Returns a description of the partition.
Reimplemented from geo::part::Partition< Data >.
Reimplemented in geo::part::GridPartition< Data >, and geo::part::PartitionContainer< Data >.
Definition at line 820 of file Partitions.h.
|
private |
The contained datum.
Definition at line 296 of file Partitions.h.