IMP logo
IMP Reference Guide  develop.63b38c487d,2024/12/25
The Integrative Modeling Platform
BondedPairFilter.h
Go to the documentation of this file.
1 /**
2  * \file IMP/atom/BondedPairFilter.h
3  * \brief A fake container for bonds
4  *
5  * Copyright 2007-2022 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPATOM_BONDED_PAIR_FILTER_H
9 #define IMPATOM_BONDED_PAIR_FILTER_H
10 
11 #include <IMP/atom/atom_config.h>
12 #include "bond_decorators.h"
13 #include <IMP/PairPredicate.h>
14 #include <IMP/pair_macros.h>
15 IMPATOM_BEGIN_NAMESPACE
16 
17 //! A filter for bonds.
18 /** This is to be used with a core::ClosePairsScoreState to exclude all
19  bonded pairs.
20  \ingroup bond
21  \see Bonded
22  */
23 class IMPATOMEXPORT BondedPairFilter : public PairPredicate {
24  public:
25  //! no arguments
27 
28  virtual int get_value_index(Model *m,
29  const ParticleIndexPair &p) const
30  override;
32  Model *m, const ParticleIndexes &pis) const override;
35  ;
36 };
37 
39 
40 IMPATOM_END_NAMESPACE
41 
42 #endif /* IMPATOM_BONDED_PAIR_FILTER_H */
Macros for various classes.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
A more IMP-like version of the std::vector.
Definition: Vector.h:50
Contains decorators for a bond.
Class for storing model, its restraints, constraints, and particles.
Definition: Model.h:86
Define PairPredicate.
virtual ModelObjectsTemp do_get_inputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the inputs.
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers.
Definition: object_macros.h:44
Abstract predicate function.
Definition: PairPredicate.h:31
virtual int get_value_index(Model *m, const ParticleIndexPair &vt) const =0
Compute the predicate and the derivative if needed.
A filter for bonds.
#define IMP_PAIR_PREDICATE_METHODS(Name)
Define extra the functions needed for a PairPredicate.
Definition: pair_macros.h:78