kspaceFirstOrder3D-OMP 1.0
The C++ implementation of the k-wave toolbox for the time-domain simulation of acoustic wave fields in 3D
Parameters/CommandLineParameters.h
Go to the documentation of this file.
00001 
00127 #ifndef TCOMMANDLINESPARAMETERS_H
00128 #define  TCOMMANDLINESPARAMETERS_H
00129 
00130 #include <cstdlib>
00131 #include <string>
00132 
00133 
00138 class TCommandLineParameters {
00139 public:
00140 
00142     TCommandLineParameters();
00144     virtual ~TCommandLineParameters() {};
00145     
00147     std::string GetInputFileName()      const {return InputFileName;};    
00149     std::string GetOutputFileName()     const {return OutputFileName;};
00150     
00152     bool IsBenchmarkFlag()              const {return BenchmarkFlag;};
00154     bool IsVersion()                    const {return PrintVersion; };
00156     int  GetBenchmarkTimeStepsCount()   const {return BenchmarkTimeStepsCount;};
00157     
00159     int  GetCompressionLevel()          const {return CompressionLevel;};
00161     int  GetNumberOfThreads()           const {return NumberOfThreads;};
00163     int  GetVerboseInterval()           const {return VerboseInterval;};
00165     int GetStartTimeIndex()             const {return StartTimeStep;};
00166    
00168     bool IsStore_p_raw()                const {return Store_p_raw;};
00170     bool IsStore_p_rms()                const {return Store_p_rms;};
00172     bool IsStore_p_max()                const {return Store_p_max;};
00174     bool IsStore_p_final()              const {return Store_p_final;};
00175     
00177     bool IsStore_u_raw()                const {return Store_u_raw;};
00179     bool IsStore_u_rms()                const {return Store_u_rms;};
00181     bool IsStore_u_max()                const {return Store_u_max;};    
00183     bool IsStore_u_final()              const {return Store_u_final;};
00184     
00186     bool IsStore_I_avg()                const {return Store_I_avg;};
00188     bool IsStore_I_max()                const {return Store_I_max;};
00189 
00191     void PrintUsageAndExit();   
00193     void PrintSetup();          
00195     void ParseCommandLine(int argc, char** argv);    
00196     
00197     
00198 protected:
00200     TCommandLineParameters(const TCommandLineParameters& src);
00201     
00203     TCommandLineParameters& operator = (const TCommandLineParameters& src);
00204 
00205 private:
00207     std::string InputFileName;
00209     std::string OutputFileName;
00210     
00212     int         NumberOfThreads;
00214     int         VerboseInterval;
00216     int         CompressionLevel;
00217     
00219     bool        BenchmarkFlag;    
00221     int         BenchmarkTimeStepsCount;
00223     bool        PrintVersion;    
00224     
00226     bool        Store_p_raw;
00228     bool        Store_p_rms;
00230     bool        Store_p_max;
00232     bool        Store_p_final;
00233     
00235     bool        Store_u_raw;
00237     bool        Store_u_rms;
00239     bool        Store_u_max;
00241     bool        Store_u_final;
00242     
00244     bool        Store_I_avg;
00246     bool        Store_I_max;
00248     int         StartTimeStep;
00249     
00250     
00251 
00253     static const int DefaultCompressionLevel = 3;
00255     static const int DefaultVerboseInterval  = 5;
00256     
00257     
00258 };// end of class TCommandLineParameters
00259 
00260 #endif   /* TCOMMANDLINESPARAMETERS_H */
00261 
 All Classes Files Functions Variables Typedefs Enumerations