13 #ifndef IMPCONTAINER_SINGLETONS_RESTRAINT_H 
   14 #define IMPCONTAINER_SINGLETONS_RESTRAINT_H 
   16 #include <IMP/container/container_config.h> 
   17 #include <IMP/internal/ContainerRestraint.h> 
   20 #include <cereal/access.hpp> 
   21 #include <cereal/types/base_class.hpp> 
   23 IMPCONTAINER_BEGIN_NAMESPACE
 
   37 #if defined(SWIG) || defined(IMP_DOXYGEN) 
   40     public IMP::internal::ContainerRestraint<SingletonScore, SingletonContainer>
 
   43   typedef IMP::internal::ContainerRestraint<
 
   46   friend class cereal::access;
 
   48   template<
class Archive> 
void serialize(Archive &ar) {
 
   49     ar(cereal::base_class<P>(
this));
 
   61                       std::string name = 
"SingletonsRestraint %1%")
 
   66 #if defined(IMP_DOXYGEN) || defined(SWIG) 
   75 IMPCONTAINER_END_NAMESPACE
 
Applies a SingletonScore to each Singleton in a list. 
 
A container for Singletons. 
 
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object. 
 
A more IMP-like version of the std::vector. 
 
Abstract class for scoring object(s) of type ParticleIndex. 
 
#define IMP_OBJECT_SERIALIZE_DECL(Name)
Declare methods needed for serialization of Object pointers. 
 
A shared container for Singletons. 
 
SingletonsRestraint(SingletonScore *ss, SingletonContainerAdaptor pc, std::string name="SingletonsRestraint %1%")
Create the restraint with a shared container. 
 
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers. 
 
Class for adding derivatives from restraints to the model. 
 
A restraint is a term in an IMP ScoringFunction.