19 #ifndef OST_IO_IO_PROFILE_HH
20 #define OST_IO_IO_PROFILE_HH
26 namespace ost {
namespace io {
28 struct DLLEXPORT IOProfile {
32 join_spread_atom_records(js), no_hetatms(nh), calpha_only(co)
35 fault_tolerant(false), join_spread_atom_records(false), no_hetatms(false),
44 bool join_spread_atom_records;
51 join_spread_atom_records, no_hetatms, calpha_only);
56 inline std::ostream&
operator<<(std::ostream& stream,
const IOProfile& p)
58 stream <<
"IOProfile(dialect='" << p.dialect <<
"', strict_hydrogens="
59 << (p.strict_hydrogens ?
"True" :
"False") <<
", quack_mode="
60 << (p.quack_mode ?
"True" :
"False") <<
", join_spread_atom_records="
61 << (p.join_spread_atom_records ?
"True" :
"False") <<
", no_hetatms="
62 << (p.no_hetatms ?
"True" :
"False") <<
", calpha_only="
63 << (p.calpha_only ?
"True" :
"False") <<
", fault_tolerant="
64 << (p.fault_tolerant ?
"True" :
"False") <<
")";
70 static IOProfileRegistry& Instance();
74 return profiles_[key];
79 profiles_[key]=profile;
85 std::map<String, IOProfile> profiles_;