IMP
2.0.1
The Integrative Modeling Platform
|
Abstract predicate function. More...
#include <IMP/kernel/TripletPredicate.h>
Public Types | |
typedef ParticleTriplet | Argument |
typedef ParticleIndexTriplet | IndexArgument |
Public Member Functions | |
TripletPredicate (std::string name="TripletPredicate %1%") | |
ContainersTemp | get_input_containers (Particle *p) const |
ParticlesTemp | get_input_particles (Particle *p) const |
ModelObjectsTemp | get_inputs (Model *m, const ParticleIndexes &pis) const |
virtual int | get_value (const ParticleTriplet &vt) const =0 |
Compute the predicate. | |
virtual Ints | get_value (const ParticleTripletsTemp &o) const |
virtual int | get_value_index (Model *m, const ParticleIndexTriplet &vt) const |
Compute the predicate and the derivative if needed. | |
virtual Ints | get_value_index (Model *m, const ParticleIndexTriplets &o) const |
int | operator() (Model *m, const ParticleIndexTriplet &vt) const |
Enable them to be use as functors. More... | |
Public Member Functions inherited from IMP::base::Object | |
virtual void | clear_caches () |
virtual IMP::base::VersionInfo | get_version_info () const =0 |
Get information about the module and version of the object. | |
void | set_check_level (CheckLevel l) |
void | set_log_level (LogLevel l) |
Set the logging level used in this object. More... | |
void | set_was_used (bool tf) const |
void | show (std::ostream &out=std::cout) const |
const std::string & | get_name () const |
void | set_name (std::string name) |
Protected Member Functions | |
virtual ModelObjectsTemp | do_get_inputs (Model *m, const ParticleIndexes &pis) const =0 |
Protected Member Functions inherited from IMP::base::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
Related Functions | |
(Note that these are not member functions.) | |
typedef IMP::base::Vector < IMP::base::WeakPointer < TripletPredicate > > | TripletPredicatesTemp |
Related Functions inherited from IMP::base::Object | |
typedef IMP::base::Vector < IMP::base::WeakPointer < Object > > | ObjectsTemp |
A predicate is a function which returns one of a discrete set of values (eg -1, 0, 1 depending on whether a value is negative, zero or positive). TripletPredicates will evaluate the predicate for the passed particles.
Implementers should check out IMP_TRIPLET_PREDICATE().
Definition at line 32 of file kernel/TripletPredicate.h.
|
protectedpure virtual |
Override if this reads other objects during evaluate.
ContainersTemp IMP::kernel::TripletPredicate::get_input_containers | ( | Particle * | p | ) | const |
Get the set of input containers when this modifier is applied to the arguments.
ParticlesTemp IMP::kernel::TripletPredicate::get_input_particles | ( | Particle * | p | ) | const |
Get the set of particles read when applied to the arguments.
ModelObjectsTemp IMP::kernel::TripletPredicate::get_inputs | ( | Model * | m, |
const ParticleIndexes & | pis | ||
) | const |
Get all the ModelObject objects that are read when the referenced particles are passed in.
|
virtual |
Implementations for these are provided by the IMP_TRIPLET_PREDICATE() macro.
Definition at line 45 of file kernel/TripletPredicate.h.
|
virtual |
Implementations for these are provided by the IMP_TRIPLET_PREDICATE() macro.
Definition at line 76 of file kernel/TripletPredicate.h.
int IMP::kernel::TripletPredicate::operator() | ( | Model * | m, |
const ParticleIndexTriplet & | vt | ||
) | const |
But beware of slicing.
Definition at line 68 of file kernel/TripletPredicate.h.
|
related |
Pass a set of objects.
Definition at line 108 of file kernel/base_types.h.