odindata/filter.h
1 //
2 // C++ Interface: filter
3 //
4 // Description:
5 //
6 //
7 // Author: <Enrico Reimer>, (C) 2008
8 //
9 // Copyright: See COPYING file that comes with this distribution
10 //
11 //
12 
13 #ifndef FILTER_H
14 #define FILTER_H
15 
16 #include <odindata/fileio.h>
17 
24 struct FilterChainData; // forward declaration
25 
27 
31 class FilterChain {
32 
33  public:
34 
38  FilterChain();
39 
43  ~FilterChain();
44 
48  FilterChain(const STD_string& argstr);
49 
53  FilterChain(int argc,char *argv[]);
54 
58  bool init(const STD_string& argstr) {return create(tokens(argstr,' ','\"','\"'));}
59 
63  bool apply(FileIO::ProtocolDataMap& pdmap) const;
64 
68  bool apply(Protocol& prot, Data<float,4>& data) const;
69 
73  STD_string get_cmdline_usage(const STD_string& lineprefix) const;
74 
75 
76  private:
77  FilterChainData* filterchaindata;
78 
79  bool create(const svector& args);
80 
81 };
82 
83 
88 #endif
STD_map< Protocol, Data< float, 4 > > ProtocolDataMap
Definition: fileio.h:60
bool apply(FileIO::ProtocolDataMap &pdmap) const
STD_string get_cmdline_usage(const STD_string &lineprefix) const
svector tokens(const STD_string &tokenstring, char custom_separator=0, char escape_begin='"', char escape_end='"')
Protcol proxy.
Definition: protocol.h:33
bool init(const STD_string &argstr)