/** * \file IMP/multifit/SettingsData.h * \brief stored multifit settings data * * Copyright 2007-2013 IMP Inventors. All rights reserved. * */ #ifndef IMPMULTIFIT_SETTINGS_DATA_H #define IMPMULTIFIT_SETTINGS_DATA_H #include #include #include #include #include #include #include IMPMULTIFIT_BEGIN_NAMESPACE //! Holds data about a component needed for optimization class IMPMULTIFITEXPORT ComponentHeader : public IMP::base::Object { public: ComponentHeader(): Object("ComponentHeader%1%") { name_=""; filename_=""; surface_fn_=""; pdb_ap_fn_=""; pdb_fine_ap_fn_=""; num_ap_=0; transformations_fn_=""; reference_fn_=""; } void set_name(const std::string &name) {name_=name;} inline std::string get_name() const {return name_;} inline std::string get_filename() const {return filename_;} void set_filename(const std::string &filename){filename_=filename;} inline std::string get_surface_fn() const {return surface_fn_;} void set_surface_fn(const std::string &fn){surface_fn_=fn;} void set_txt_ap_fn(const std::string &pdb_ap_fn) {pdb_ap_fn_=pdb_ap_fn;} inline std::string get_txt_ap_fn() const {return pdb_ap_fn_;} void set_txt_fine_ap_fn(const std::string &pdb_ap_fn) { pdb_fine_ap_fn_=pdb_ap_fn;} inline std::string get_txt_fine_ap_fn() const { return pdb_fine_ap_fn_;} void set_num_ap(int num_ap) {num_ap_=num_ap;} inline int get_num_ap() const {return num_ap_;} void set_num_fine_ap(int num_ap) {num_fine_ap_=num_ap;} inline int get_num_fine_ap() const {return num_fine_ap_;} void set_transformations_fn(std::string transformations_fn) { transformations_fn_=transformations_fn;} std::string get_transformations_fn() const {return transformations_fn_;} void set_reference_fn(const std::string &ref_fn){reference_fn_=ref_fn;} std::string get_reference_fn() const {return reference_fn_;} IMP_OBJECT_INLINE(ComponentHeader, { out<set_was_used(true);,,); protected: IMP::OwnerPointer dens_data_; std::string asmb_fn_; std::string data_path_; }; IMPMULTIFITEXPORT SettingsData *read_settings(const char *filename); IMPMULTIFITEXPORT void write_settings( const char *filename, const SettingsData *sd); IMPMULTIFIT_END_NAMESPACE #endif /* IMPMULTIFIT_SETTINGS_DATA_H */