IMP  2.3.0
The Integrative Modeling Platform
CloseBipartitePairContainer.h
Go to the documentation of this file.
1 /**
2  * \file IMP/container/CloseBipartitePairContainer.h
3  * \brief Return all pairs from a SingletonContainer
4  *
5  * This file is generated by a script (core/tools/make-container).
6  * Do not edit directly.
7  *
8  * Copyright 2007-2014 IMP Inventors. Close rights reserved.
9  */
10 
11 #ifndef IMPCONTAINER_CLOSE_BIPARTITE_PAIR_CONTAINER_H
12 #define IMPCONTAINER_CLOSE_BIPARTITE_PAIR_CONTAINER_H
13 
14 #include <IMP/container/container_config.h>
16 #include <IMP/core/internal/CoreCloseBipartitePairContainer.h>
17 #include <IMP/core/internal/MovedSingletonContainer.h>
18 #include <IMP/PairContainer.h>
19 #include <IMP/PairPredicate.h>
20 #include <IMP/SingletonContainer.h>
23 
24 IMPCONTAINER_BEGIN_NAMESPACE
25 
26 /** \brief Return all close ordered pairs of particles taken from the
27  two SingletonContainers.
28 
29  \see ClosePairContainer for a more detailed description. This
30  container lists all close pairs of particles where one particle is
31  taken from each of the input sets.
32 
33  \see also AllPairContainer, ClosePairContainer,
34  AllBipartitePairContainer for variants on the functionality provided.
35  */
36 class IMPCONTAINEREXPORT CloseBipartitePairContainer :
37 #if defined(IMP_DOXYGEN) || defined(SWIG)
38  public PairContainer
39 #else
40  public IMP::core::internal::CoreCloseBipartitePairContainer
41 #endif
42  {
43  typedef IMP::core::internal::CoreCloseBipartitePairContainer P;
44 
45  public:
46  //! Get the individual particles from the passed SingletonContainer
47  CloseBipartitePairContainer(SingletonContainerAdaptor a,
48  SingletonContainerAdaptor b, double distance,
49  double slack = 1,
50  std::string name =
51  "CloseBipartitePairContainer%1%");
52 #ifndef IMP_DOXYGEN
53  //! Get the individual particles from the passed SingletonContainer
54  CloseBipartitePairContainer(SingletonContainerAdaptor a,
55  SingletonContainerAdaptor b, double distance,
56  core::ClosePairsFinder *cpf, double slack = 1,
57  std::string name =
58  "CloseBipartitePairContainer%1%");
59 #endif
60 
61 #if defined(IMP_DOXYGEN) || defined(SWIG)
62 
63  /** @name Methods to control the set of filters
64 
65  PairPredicate objects can be used as filters to prevent
66  the addition of pairs to the containeroutput list. Pairs
67  for which the predicates evaluate to a non-zero value are
68  excluded from the list.
69  */
70  /**@{*/
71  IMP_LIST_ACTION(public, PairPredicate, PairPredicates, pair_filter,
72  pair_filters, PairPredicate *, PairPredicates,
73  obj->set_was_used(true);
74  , , );
75  /**@}*/
79  void do_apply(const PairModifier *sm) const;
81 
82  private:
83  virtual std::size_t do_get_contents_hash() const IMP_OVERRIDE;
84 #endif
86 };
87 
88 IMPCONTAINER_END_NAMESPACE
89 
90 #endif /* IMPCONTAINER_CLOSE_BIPARTITE_PAIR_CONTAINER_H */
virtual ParticleIndexes get_all_possible_indexes() const =0
Get contained particles.
A base class for algorithms to find spatial proximities.
Import IMP/kernel/SingletonContainer.h in the namespace.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
virtual kernel::ParticleIndexPairs get_indexes() const =0
A shared container for Pairs.
Return all close ordered pairs of particles taken from the two SingletonContainers.
Import IMP/kernel/PairContainer.h in the namespace.
Import IMP/kernel/PairPredicate.h in the namespace.
virtual kernel::ParticleIndexPairs get_range_indexes() const =0
Store a list of kernel::ParticlePairsTemp.
Abstract predicate function.
IMP::base::Vector< IMP::base::Pointer< PairPredicate > > PairPredicates
virtual ModelObjectsTemp do_get_inputs() const =0
A base class for algorithms to detect proximities.
Macros to define containers of objects.
A base class for modifiers of kernel::ParticlePairsTemp.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.