IMP  2.1.0
The Integrative Modeling Platform
restraint_io.h
Go to the documentation of this file.
1 /**
2  * \file IMP/rmf/restraint_io.h
3  * \brief Handle read/write of kernel::Model data from/to files.
4  *
5  * Copyright 2007-2013 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPRMF_RESTRAINT_IO_H
10 #define IMPRMF_RESTRAINT_IO_H
11 
12 #include <IMP/rmf/rmf_config.h>
13 #include "link_macros.h"
14 #include <IMP/base/object_macros.h>
15 #include <IMP/kernel/Restraint.h>
16 #include <IMP/restraint_macros.h>
17 
18 IMPRMF_BEGIN_NAMESPACE
19 
20 /** \name kernel::Restraint I/O
21  kernel::Restraints are written as am RMF::FEATURE node with subnodes for
22  the decomposed restraints
23  (kernel::Restraint::create_current_decompositon()).
24  The kernel::Restraints::get_last_score() value is what is saved to the file,
25  so make sure that the restraints have been evaluated before saving
26  a frame.
27 
28  Any particles returnd by kernel::Restraint::get_input_particles() that are
29  also linked in the RMF file will be included in the RMF file as
30  inputs for the kernel::Restraint. This allows external software like e.g.,
31  Chimera to associate these restrains with a certain set of particles.
32  @{
33 */
34 IMP_DECLARE_LINKERS(Restraint, restraint, restraints, kernel::Restraint *,
36  (RMF::FileConstHandle fh, kernel::Model *m), );
37 
38 /** Certain restraint are made from a really large number of terms.
39  Tracking and displaying all those
40  terms can be very time consuming. If the number of terms is larger
41  than the maximum, the terms are not displayed. By default this is 100.*/
42 IMPRMFEXPORT void set_maximum_number_of_terms(RMF::FileHandle fh,
43  unsigned int num);
44 /** @} */
45 
46 IMPRMF_END_NAMESPACE
47 
48 #endif /* IMPRMF_RESTRAINT_IO_H */
IMP::base::Vector< IMP::base::Pointer< Restraint > > Restraints
Import IMP/kernel/restraint_macros.h in the namespace.
Abstract base class for all restraints.
IMP::kernel::Model Model
void set_maximum_number_of_terms(RMF::FileHandle fh, unsigned int num)
Various general useful macros for IMP.
IMP::kernel::Restraint Restraint