00001 #ifndef ANISOSURFACEWAVESYNTHETIC_H_ 00002 #define ANISOSURFACEWAVESYNTHETIC_H_ 00003 00004 #include "ParkSurfaceWaveData.h" 00005 #include "AnisoSurfaceWaveModel.h" 00006 #include <string> 00007 #include <boost/shared_ptr.hpp> 00008 00009 #include "types.h" 00010 00011 class AnisoSurfaceWaveSynthetic 00012 { 00013 private: 00014 trealdata calculationperiods; 00015 boost::shared_ptr<AnisoSurfaceWaveModel> Model; 00016 ParkSurfaceWaveData SynthData; 00017 public: 00018 const ParkSurfaceWaveData &GetSynthData() const {return SynthData;} 00019 const AnisoSurfaceWaveModel &GetModel() 00020 { 00021 return *Model.get(); 00022 } 00023 void SetModel(const boost::shared_ptr<AnisoSurfaceWaveModel> m) 00024 { 00025 Model = m; 00026 } 00027 void PreParallel(const std::string &filename); 00028 ParkSurfaceWaveData SafeParallel(const std::string &filename); 00029 ParkSurfaceWaveData GetSynthData(const std::string &filename); 00030 AnisoSurfaceWaveSynthetic(); 00031 virtual ~AnisoSurfaceWaveSynthetic(); 00032 }; 00033 00034 #endif /*ANISOSURFACEWAVESYNTHETIC_H_*/
1.5.5