11 #ifndef IMPCONTAINER_ALL_BIPARTITE_PAIR_CONTAINER_H
12 #define IMPCONTAINER_ALL_BIPARTITE_PAIR_CONTAINER_H
14 #include <IMP/container/container_config.h>
22 #include <boost/functional/hash/hash.hpp>
24 IMPCONTAINER_BEGIN_NAMESPACE
34 virtual std::size_t do_get_contents_hash()
const IMP_OVERRIDE {
35 std::size_t ret = a_->get_contents_hash();
36 boost::hash_combine(ret, b_->get_contents_hash());
51 SingletonContainerAdaptor b,
52 std::string name =
"AllBipartitePairContainer%1%");
63 IMPCONTAINER_END_NAMESPACE
virtual ParticleIndexes get_all_possible_indexes() const =0
Get contained particles.
Import IMP/kernel/pair_macros.h in the namespace.
Import IMP/kernel/SingletonContainer.h in the namespace.
A smart pointer to a ref-counted Object that is a class member.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Store a set of PairContainers.
#define IMP_PAIR_CONTAINER_METHODS(Name)
virtual kernel::ParticleIndexPairs get_indexes() const =0
Import IMP/kernel/singleton_macros.h in the namespace.
A shared container for Pairs.
A class to store an fixed array of same-typed values.
Import IMP/kernel/PairContainer.h in the namespace.
virtual kernel::ParticleIndexPairs get_range_indexes() const =0
Store a list of kernel::ParticlePairsTemp.
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
void apply_generic(const PairModifier *m) const
Just use apply() in the base class.
virtual ModelObjectsTemp do_get_inputs() const =0
Return all bipartite pairs between two containers.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.