/** * \file TripletRestraint.h * \brief Apply a TripletScore to a Triplet. * * This file is generated by a script (core/tools/make-container). * Do not edit directly. * * Copyright 2007-2010 IMP Inventors. All rights reserved. * */ #ifndef IMPCORE_TRIPLET_RESTRAINT_H #define IMPCORE_TRIPLET_RESTRAINT_H #include "core_config.h" #include #include #include #include "internal/triplet_helpers.h" #include IMPCORE_BEGIN_NAMESPACE //! Applies a TripletScore to a Triplet. /** This restraint stores a Triplet. \see TripletRestraint */ class IMPCOREEXPORT TripletRestraint : public TripletScoreRestraint { IMP::internal::OwnerPointer ss_; ParticleTriplet v_; mutable double score_; public: //! Create the restraint. /** This function takes the function to apply to the stored Triplet and the Triplet. */ TripletRestraint(TripletScore *ss, const ParticleTriplet& vt, std::string name="TripletRestraint %1%"); TripletScore* get_score() const { return ss_; } ParticleTriplet get_argument() const { return v_; } IMP_INCREMENTAL_RESTRAINT(TripletRestraint); }; IMPCORE_END_NAMESPACE #endif /* IMPCORE_TRIPLET_RESTRAINT_H */