shiftModule.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: shiftModule.h,v 1.18 2005/12/23 17:01:56 amoll Exp $
00005 //
00006 
00007 #ifndef BALL_NMR_SHIFTMODULE_H
00008 #define BALL_NMR_SHIFTMODULE_H
00009 
00010 #ifndef BALL_KERNEL_SYSTEM_H
00011 # include<BALL/KERNEL/system.h>
00012 #endif
00013 
00014 #ifndef BALL_DATATYPE_STRING_H
00015 # include<BALL/DATATYPE/string.h>
00016 #endif
00017 
00018 #ifndef BALL_DATATYPE_LIST_H
00019 # include<BALL/DATATYPE/list.h>
00020 #endif
00021 
00022 #ifndef BALL_CONCEPT_PROCESSOR_H
00023 # include<BALL/CONCEPT/processor.h>
00024 #endif
00025 
00026 #ifndef BALL_FORMAT_PARAMETERS_H
00027 # include<BALL/FORMAT/parameters.h>
00028 #endif
00029 
00030 namespace BALL 
00031 {
00045   class BALL_EXPORT ShiftModule 
00046     : public UnaryProcessor<Composite>
00047   {
00048     public: 
00049 
00050     BALL_CREATE(ShiftModule)
00051 
00052     
00055 
00062     static const char* PROPERTY__SHIFT;
00064 
00068     
00071     ShiftModule();
00072 
00075     ShiftModule(Parameters& parameters, const String& name = "");
00076 
00079     ShiftModule(const ShiftModule& module);
00080 
00083     virtual ~ShiftModule();
00084 
00088     virtual void clear();
00089 
00091 
00094 
00097     const ShiftModule& operator = (const ShiftModule& module);
00098 
00100 
00103 
00106     void setName(const String& name);
00107 
00110     const String& getName() const;
00111 
00118     void setParameters(Parameters& parameters);
00119 
00122     const Parameters* getParameters() const;
00123 
00132     virtual void init();
00133 
00135 
00138 
00143     virtual bool start();
00144 
00149     virtual bool finish();
00150 
00152 
00155 
00160     bool isValid() const;
00161 
00163 
00164     protected:
00165 
00166     /*_ The module name
00167     */
00168     String  module_name_;   
00169 
00170     /*_ A pointer to the modules parameters
00171     */
00172     Parameters* parameters_;
00173 
00174     /*_ The module's validity flag.
00175         This flag should indicate that the module was correctly
00176         initialized (using \Ref{init}).
00177     */
00178     bool valid_;
00179   };
00180   
00181 } // namespace BALL
00182 
00183 #endif // BALL_NMR_SHIFTMODULE_H