00001 #ifndef OST_CONOP_MODEL_CHECK_HH 00002 #define OST_CONOP_MODEL_CHECK_HH 00003 00004 #include <ost/mol/entity_handle.hh> 00005 #include <ost/conop/diag.hh> 00006 #include <ost/conop/compound_lib.hh> 00007 namespace ost { namespace conop { 00008 00009 class DLLEXPORT_OST_CONOP Checker { 00010 public: 00011 Checker(CompoundLibPtr lib, const mol::EntityHandle& ent, 00012 Diagnostics& diags): lib_(lib), ent_(ent), diags_(diags), 00013 checked_unk_res_(false), residues_(ent_.GetResidueList()) 00014 {} 00015 void CheckForUnknownAtoms(); 00016 void CheckForCompleteness(bool require_hydrogens=false); 00017 void CheckForNonStandard(); 00018 mol::AtomHandleList GetHydrogens(); 00019 mol::AtomHandleList GetZeroOccupancy(); 00020 00021 private: 00022 CompoundLibPtr lib_; 00023 mol::EntityHandle ent_; 00024 Diagnostics& diags_; 00025 bool checked_unk_res_; 00026 mol::ResidueHandleList residues_; 00027 }; 00028 00029 }} /* ost::conop */ 00030 #endif