Commit 7625a8ab authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

added identifiers and help functions

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.


SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/trunk
SVN Revision: 3919
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 1f76191a
......@@ -72,6 +72,13 @@ namespace stfinv {
stfinv::STFBaseEngine* Mengine;
}; // class STFEngine
/*----------------------------------------------------------------------*/
/*! print online help of the whole implemented system of engines
* \ingroup cxxinterface
*/
void help(std::ostream& os=std::cout);
} // namespace stfinv
#endif // STFINV_STFINVANY_H_VERSION (includeguard)
......
......@@ -42,6 +42,18 @@
namespace stfinv {
void STFBaseEngine::checkconsistency() const
{
STFINV_abort("consistency check not yet implemented");
}
/*----------------------------------------------------------------------*/
void STFBaseEngine::help(std::ostream& os) const
{
os << "online help is not implemented for this engine" << std::endl;
}
} // namespace stfinv
/* ----- END OF stfinvbase.cc ----- */
......@@ -45,6 +45,7 @@
#include<stfinv/waveformheader.h>
#include<stfinv/error.h>
#include<aff/series.h>
#include<iostream>
#include<list>
namespace stfinv {
......@@ -59,7 +60,7 @@ namespace stfinv {
/*! \brief A class to store the time series for a waveform triple.
* \ingroup cxxinterface
*/
class WaveformTriple {
struct WaveformTriple {
/*! \brief The header is expected to be the same for all three time series.
* In particular the number of samples must be appropriate for the memory
* allocated for all three time series arrays.
......@@ -85,7 +86,7 @@ namespace stfinv {
* This will be used to pass the source time function.
* \ingroup cxxinterface
*/
class Waveform {
struct Waveform {
/*! \brief Temporal sampling
*/
CWaveformHeader sampling;
......@@ -126,6 +127,8 @@ namespace stfinv {
virtual ~STFBaseEngine() { }
//! \brief Start engine and return source time function.
virtual stfinv::Waveform run() { STFINV_baseillegal; }
//! \brief print online help
virtual void help(std::ostream& os=std::cout) const;
private:
//! \brief Check consistency of data members.
void checkconsistency() const;
......
......@@ -42,6 +42,11 @@
namespace stfinv {
const char* const STFEngineBlindDeconvolution::ID="fbd";
const char* const STFEngineBlindDeconvolution::description
="blind deconvolution in the frequency domain";
} // namespace stfinv
/* ----- END OF stfinvblinddeconv.cc ----- */
......@@ -51,7 +51,12 @@ namespace stfinv {
*/
class STFEngineBlindDeconvolution: private stfinv::STFBaseEngine {
public:
//! \brief typedef to refer to base class
typedef stfinv::STFBaseEngine Tbase;
//! \brief ID used to select thsi engine
static const char* const ID;
//! \brief short description of this engine
static const char* const description;
/*! \brief Constructor.
*/
STFEngineBlindDeconvolution(const stfinv::Tlistoftriples& triples,
......
......@@ -42,6 +42,11 @@
namespace stfinv {
const char* const STFEngineFixedWavelet::ID="fix";
const char* const STFEngineFixedWavelet::description
="use fixed wavelet as read from file";
} // namespace stfinv
/* ----- END OF stfinvfixedstf.cc ----- */
......@@ -51,7 +51,12 @@ namespace stfinv {
*/
class STFEngineFixedWavelet: private stfinv::STFBaseEngine {
public:
//! \brief typedef to refer to base class
typedef stfinv::STFBaseEngine Tbase;
//! \brief ID used to select thsi engine
static const char* const ID;
//! \brief short description of this engine
static const char* const description;
/*! \brief Constructor.
*/
STFEngineFixedWavelet(const stfinv::Tlistoftriples& triples,
......
......@@ -42,6 +42,11 @@
namespace stfinv {
const char* const STFEngineIdentity::ID="ident";
const char* const STFEngineIdentity::description
="identity: just apply a scalar factor";
} // namespace stfinv
/* ----- END OF stfinvidentity.cc ----- */
......@@ -42,6 +42,8 @@
#define STFINV_STFINVIDENTITY_H_CVSID \
"$Id$"
#include<stfinv/stfinvbase.h>
namespace stfinv {
/*! \brief Engine to apply a scalar factor
......@@ -49,7 +51,12 @@ namespace stfinv {
*/
class STFEngineIdentity: private stfinv::STFBaseEngine {
public:
//! \brief typedef to refer to base class
typedef stfinv::STFBaseEngine Tbase;
//! \brief ID used to select thsi engine
static const char* const ID;
//! \brief short description of this engine
static const char* const description;
/*! \brief Constructor.
*/
STFEngineIdentity(const stfinv::Tlistoftriples& triples,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment