Rosetta Protocols  2014.35
Public Types | Public Member Functions | Private Attributes | List of all members
protocols::match::MatchCounter Class Reference

Class for counting the number of matches given a particular discretization level. More...

#include <MatchSet.hh>

Public Types

typedef core::Real Real
 
typedef core::Size Size
 
typedef core::Vector Vector
 
typedef
numeric::geometry::BoundingBox
< Vector
BoundingBox
 
typedef
numeric::geometry::hashing::Bin6D 
Bin6D
 
typedef utility::vector1< SizeHitCounts
 
typedef boost::unordered_map
< boost::uint64_t, HitCounts,
numeric::geometry::hashing::bin_index_hasher
HitHash
 

Public Member Functions

 MatchCounter ()
 
virtual ~MatchCounter ()
 
void set_bounding_box (BoundingBox const &bb)
 Use the same bounding box as the HitHasher / OccupiedSpaceHash. More...
 
void set_n_geometric_constraints (Size ngeomcsts)
 
void set_uniform_xyz_bin_width (Real bin_width)
 Give the same xyz bin witdh given to the HitHasher / OccupiedSpaceHash. More...
 
void set_uniform_euler_angle_bin_width (Real bin_width_degrees)
 Give the same euler-angle bin witdh given to the HitHasher / OccupiedSpaceHash. More...
 
void set_xyz_bin_widths (Vector const &bin_widths)
 Give the same xyz bin witdhs given to the HitHasher / OccupiedSpaceHash. More...
 
void set_euler_bin_widths (Vector const &euler_bin_widths)
 Give the same euler-angle bin witdhs given to the HitHasher / OccupiedSpaceHash. More...
 
void initialize ()
 Call this after the bounding-box and the bin-widths have been set up. Must be called before "add_hits" it called. This initializes the SixDCoordinateBinner. More...
 
void add_hits (Size geomcst_id, std::list< Hit > const &hitlist)
 Add hits from a list of hits for a particular geometric constraint. More...
 
void add_hits (Size geomcst_id, std::list< Hit const * > const &hitptrlist)
 Add hit from the input list of hits for a particular geometric constraint. More...
 
Size count_n_matches () const
 Possibly slow method to predict the total number of matches given a set of hits and a particular grid resolution. (The main function that this class provides). More...
 

Private Attributes

BoundingBox bb_
 
Size n_geom_csts_
 
bool initialized_
 
utility::fixedsizearray1< Real, 3 > xyz_bin_widths_
 
utility::fixedsizearray1< Real, 3 > euler_bin_widths_
 
numeric::geometry::hashing::SixDCoordinateBinnerOP binner_
 
HitHash hash_
 

Detailed Description

Class for counting the number of matches given a particular discretization level.

Member Typedef Documentation

Constructor & Destructor Documentation

protocols::match::MatchCounter::MatchCounter ( )
protocols::match::MatchCounter::~MatchCounter ( )
virtual

Member Function Documentation

void protocols::match::MatchCounter::add_hits ( Size  geomcst_id,
std::list< Hit > const &  hitlist 
)

Add hits from a list of hits for a particular geometric constraint.

References numeric::geometry::hashing::SixDCoordinateBinner::bin_index(), binner_, hash_, initialized_, and n_geom_csts_.

Referenced by protocols::match::Matcher::predict_n_matches_for_hit_subsets().

void protocols::match::MatchCounter::add_hits ( Size  geomcst_id,
std::list< Hit const * > const &  hitptrlist 
)

Add hit from the input list of hits for a particular geometric constraint.

References numeric::geometry::hashing::SixDCoordinateBinner::bin_index(), binner_, hash_, initialized_, and n_geom_csts_.

MatchCounter::Size protocols::match::MatchCounter::count_n_matches ( ) const
void protocols::match::MatchCounter::initialize ( )

Call this after the bounding-box and the bin-widths have been set up. Must be called before "add_hits" it called. This initializes the SixDCoordinateBinner.

hash based on halfbin widths.

References bb_, binner_, euler_bin_widths_, initialized_, and xyz_bin_widths_.

Referenced by protocols::match::Matcher::predict_n_matches_for_hit_subsets().

void protocols::match::MatchCounter::set_bounding_box ( BoundingBox const &  bb)

Use the same bounding box as the HitHasher / OccupiedSpaceHash.

References bb_, and initialized_.

Referenced by protocols::match::Matcher::predict_n_matches_for_hit_subsets().

void protocols::match::MatchCounter::set_euler_bin_widths ( Vector const &  euler_bin_widths)

Give the same euler-angle bin witdhs given to the HitHasher / OccupiedSpaceHash.

References euler_bin_widths_, and initialized_.

Referenced by protocols::match::Matcher::predict_n_matches_for_hit_subsets().

void protocols::match::MatchCounter::set_n_geometric_constraints ( Size  ngeomcsts)
void protocols::match::MatchCounter::set_uniform_euler_angle_bin_width ( Real  bin_width_degrees)

Give the same euler-angle bin witdh given to the HitHasher / OccupiedSpaceHash.

References euler_bin_widths_, and initialized_.

void protocols::match::MatchCounter::set_uniform_xyz_bin_width ( Real  bin_width)

Give the same xyz bin witdh given to the HitHasher / OccupiedSpaceHash.

References initialized_, and xyz_bin_widths_.

void protocols::match::MatchCounter::set_xyz_bin_widths ( Vector const &  bin_widths)

Give the same xyz bin witdhs given to the HitHasher / OccupiedSpaceHash.

References initialized_, and xyz_bin_widths_.

Referenced by protocols::match::Matcher::predict_n_matches_for_hit_subsets().

Member Data Documentation

BoundingBox protocols::match::MatchCounter::bb_
private

Referenced by initialize(), and set_bounding_box().

numeric::geometry::hashing::SixDCoordinateBinnerOP protocols::match::MatchCounter::binner_
private
utility::fixedsizearray1< Real, 3 > protocols::match::MatchCounter::euler_bin_widths_
private
HitHash protocols::match::MatchCounter::hash_
private

Referenced by add_hits(), and count_n_matches().

bool protocols::match::MatchCounter::initialized_
private
Size protocols::match::MatchCounter::n_geom_csts_
private
utility::fixedsizearray1< Real, 3 > protocols::match::MatchCounter::xyz_bin_widths_
private

The documentation for this class was generated from the following files: