15 #ifndef INCLUDED_core_conformation_Conformation_hh
16 #define INCLUDED_core_conformation_Conformation_hh
48 #include <utility/pointer/access_ptr.hh>
49 #include <utility/pointer/owning_ptr.hh>
50 #include <utility/pointer/ReferenceCount.hh>
51 #include <utility/signals/BufferedSignalHub.hh>
52 #include <utility/signals/Link.hh>
53 #include <utility/signals/PausableSignalHub.hh>
54 #include <numeric/xyzVector.hh>
62 #include <utility/vector1.hh>
78 namespace conformation {
107 typedef std::map< id::AtomID, Vector >
FragXYZ;
108 typedef std::map< id::StubID, kinematics::RT >
FragRT;
185 if ( chain == 1 )
return 1;
275 assert( seqpos >= 1 );
276 assert( seqpos <=
size() );
288 runtime_assert( seqpos >= 1 );
289 runtime_assert( seqpos <=
size() );
299 assert( seqpos >=1 );
300 assert( seqpos <=
size() );
315 Size const anchor_residue,
318 bool const start_new_chain =
false
331 bool new_chain =
false
338 bool const build_ideal_geometry =
false,
339 int connection_index = 0,
340 Size anchor_residue = 0,
341 int anchor_connection_index = 0,
342 bool const start_new_chain =
false,
343 bool const lookup_bond_length =
false
351 bool const build_ideal_geometry
359 bool const build_ideal_geometry
367 bool const build_ideal_geometry
375 bool const build_ideal_geometry
383 bool const orient_backbone
393 utility::vector1< std::pair< std::string, std::string > >
const & atom_pairs
423 Size const insert_seqpos,
424 Size const insert_jumppos,
425 Size const anchor_pos,
426 Size const anchor_jump_number = 0,
557 FragRT const & outstub_transforms,
597 jump(
int const jump_number )
const;
606 int const jump_number,
607 Jump const & new_jump
620 int const jump_number,
621 Jump const & new_jump
642 Jump const & new_jump
812 int const connection_index
853 template<
typename MemFn,
typename Ptr >
855 utility::signals::Link
871 template<
typename MemFn,
typename Ptr >
885 template<
typename MemFn,
typename Ptr >
887 utility::signals::Link
899 template<
typename MemFn,
typename Ptr >
911 template<
typename MemFn,
typename Ptr >
913 utility::signals::Link
923 template<
typename MemFn,
typename Ptr >
935 template<
typename MemFn,
typename Ptr >
937 utility::signals::Link
947 template<
typename MemFn,
typename Ptr >
959 template<
typename MemFn,
typename Ptr >
961 utility::signals::Link
971 template<
typename MemFn,
typename Ptr >
1055 #ifdef USEBOOSTSERIALIZE
1056 friend class boost::serialization::access;
1058 template<
class Archive>
1059 void save(Archive & ar,
const unsigned int version)
const {
1063 for(
int i = 1; i <=
residues_.size(); i++ ) {
1070 for(
int i = 1; i <=
residues_.size(); i++ ) {
1083 template<
class Archive>
1084 void load(Archive & ar,
const unsigned int version) {
1087 Residue * tmpp = NULL;
1088 for(
int i = 1; i <= idx; i++ ) {
1103 BOOST_SERIALIZATION_SPLIT_MEMBER()
1113 assert( seqpos >=1 );
1114 assert( seqpos <=
size() );
1121 Size const new_size,
1134 bool const join_lower,
1135 bool const join_upper
1144 bool const attach_by_jump,
1147 bool const start_new_chain
1164 bool const use_lower_chain =
false,
1165 bool const new_chain =
false
1400 mutable utility::signals::BufferedSignalHub< void, XYZEvent >
xyz_obs_hub_;