37 #include <ObjexxFCL/string.functions.hh>
40 #include <utility/pointer/ReferenceCount.hh>
41 #include <utility/vector1.hh>
42 #include <utility/file/FileName.hh>
44 #include <basic/options/option.hh>
45 #include <basic/Tracer.hh>
51 #include <basic/options/option_macros.hh>
52 #include <basic/options/keys/evaluation.OptionKeys.gen.hh>
53 #include <basic/options/keys/abinitio.OptionKeys.gen.hh>
54 #include <basic/options/keys/in.OptionKeys.gen.hh>
57 #include <utility/vector0.hh>
63 #include <utility/exit.hh>
66 static basic::Tracer
tr(
"protocols.evalution.NativeEvaluatorCreator");
69 namespace simple_filters {
74 using namespace basic::options;
78 OPT( in::file::native );
79 OPT( in::file::native_exclude_res );
80 OPT( evaluation::gdtmm );
81 OPT( abinitio::rmsd_residues );
87 using namespace basic::options;
88 using namespace basic::options::OptionKeys;
91 if ( option[ in::file::native ].user() ) {
98 if ( native_pose && option[ in::file::native ].user() ) {
99 if ( option[ in::file::native_exclude_res ].user() ) {
103 native_pose->total_residue(), option[ in::file::native_exclude_res ]()),
"" )
105 if ( option[ OptionKeys::evaluation::gdtmm ]() ) {
109 option[ in::file::native_exclude_res ]()),
"" )
112 }
else if ( option[ OptionKeys::abinitio::rmsd_residues ].user() ){
113 core::Size start = option[ OptionKeys::abinitio::rmsd_residues ]()[ 1 ];
114 Size end = option[ OptionKeys::abinitio::rmsd_residues ]()[ 2 ];
123 if ( option[ OptionKeys::evaluation::rmsd_select ].user() ) {
125 if ( !option[ in::file::native ].user() ) utility_exit_with_message(
"need to specify in:file:native together with rmsd_select " );
127 for (
Size ct = 1; ct <= rmsd_core.size(); ct ++ ) {
128 std::ifstream is( rmsd_core[ ct ].name().c_str() );
131 utility_exit_with_message(
"[ERROR] Error opening RBSeg file '" + rmsd_core[ ct ].name() +
"'" );
142 if ( option[ OptionKeys::evaluation::score_with_rmsd ]() ) {
152 return "NativeEvaluatorCreator";