IMP  2.1.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-2013 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>
22 
23 IMPCONTAINER_BEGIN_NAMESPACE
24 
25 /** \brief Return all close ordered pairs of particles taken from the
26  two SingletonContainers.
27 
28  See ClosePairContainer for a more detailed description. This
29  container lists all close pairs of particles where one particle is
30  taken from each of the input sets.
31 
32  See also AllPairContainer, ClosePairContainer,
33  AllBipartitePairContainer for variants on the functionality provided.
34  */
35 class IMPCONTAINEREXPORT CloseBipartitePairContainer :
36 #if defined(IMP_DOXYGEN) || defined(SWIG)
37  public PairContainer
38 #else
39  public IMP::core::internal::CoreCloseBipartitePairContainer
40 #endif
41  {
42  typedef IMP::core::internal::CoreCloseBipartitePairContainer P;
43 
44  public:
45  //! Get the individual particles from the passed SingletonContainer
46  CloseBipartitePairContainer(SingletonContainerAdaptor a,
47  SingletonContainerAdaptor b, double distance,
48  double slack = 1,
49  std::string name =
50  "CloseBipartitePairContainer%1%");
51 #ifndef IMP_DOXYGEN
52  //! Get the individual particles from the passed SingletonContainer
53  CloseBipartitePairContainer(SingletonContainerAdaptor a,
54  SingletonContainerAdaptor b, double distance,
55  core::ClosePairsFinder *cpf, double slack = 1,
56  std::string name =
57  "CloseBipartitePairContainer%1%");
58 #endif
59 
60 #if defined(IMP_DOXYGEN) || defined(SWIG)
61 
62  /** @name Methods to control the set of filters
63 
64  PairPredicate objects can be used as filters to prevent
65  the addition of pairs to the containeroutput list. Pairs
66  for which the predicates evaluate to a non-zero value are
67  excluded from the list.
68  */
69  /**@{*/
70  IMP_LIST_ACTION(public, PairPredicate, PairPredicates, pair_filter,
71  pair_filters, PairPredicate *, PairPredicates,
72  obj->set_was_used(true);
73  , , );
74  /**@}*/
77  void do_before_evaluate();
79  void do_apply(const PairModifier *sm) const;
81 #endif
83 };
84 
85 IMPCONTAINER_END_NAMESPACE
86 
87 #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.
A shared container for Pairs.
virtual ParticleIndexPairs get_indexes() const =0
Return all close ordered pairs of particles taken from the two SingletonContainers.
Import IMP/kernel/PairContainer.h in the namespace.
virtual ParticleIndexPairs get_range_indexes() const =0
Import IMP/kernel/PairPredicate.h in the namespace.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Store a list of 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.
A base class for modifiers of ParticlePairsTemp.