00001 // -*- Mode: C++; tab-wdith: 2: -*- 00002 // vi: set ts=2: 00003 // 00004 // 00005 00006 #ifndef BALL_QSAR_PARTIALCHARGEBASE_H 00007 #define BALL_QSAR_PARTIALCHARGEBASE_H 00008 00009 #ifndef BALL_QSAR_DESCRIPTOR_H 00010 #include <BALL/QSAR/descriptor.h> 00011 #endif 00012 00013 namespace BALL 00014 { 00018 class BALL_EXPORT PartialChargeBase 00019 : public Descriptor 00020 { 00021 public: 00027 PartialChargeBase(); 00028 00031 PartialChargeBase(const PartialChargeBase& pcb); 00032 00035 PartialChargeBase(const String& name); 00036 00039 PartialChargeBase(const String& name, const String& unit); 00040 00043 virtual ~PartialChargeBase(); 00045 00049 void computeAllDescriptors(AtomContainer& ac); 00050 00051 void setDataFolder(const char* folder); 00053 00059 PartialChargeBase& operator = (const PartialChargeBase& pcb); 00061 00062 00063 protected: 00064 00069 bool isValid_(AtomContainer& ac); 00071 00076 void calculate_(AtomContainer& ac); 00078 00079 String data_folder_; 00080 00081 }; 00082 00083 } // namespace BALL 00084 00085 #endif 00086 00087