SiGraph: sulcal graphs


dimreductor.h
Go to the documentation of this file.
1
2#ifndef SI_FS_FS_H
3#define SI_FS_FS_H
4
5
6#include <cartobase/object/object.h>
7
8class Tree;
9
10
11namespace sigraph
12{
13
17{
18 public:
19 virtual ~DimReductor();
20
21 virtual DimReductor* clone() const = 0;
22 virtual const std::string typeName() const = 0;
23
24 virtual unsigned int reducedDim() const = 0;
25 virtual std::vector<double> *
26 transform(const std::vector<double> &v) const;
27 virtual void transform(const std::vector<double> &src,
28 std::vector<double> &dst) const = 0;
29 virtual void buildTree(Tree &tr) const = 0;
31
32 protected:
34 DimReductor(const DimReductor& dimreductor);
35};
36
37// inline
39{
40}
41
43{
44}
45
47{
48 return (*this);
49}
50
51inline std::vector<double> *
52DimReductor::transform(const std::vector<double> &v) const
53{
54 std::vector<double> *v2 = new std::vector<double>;
55 v2->reserve(reducedDim());
56 transform(v, *v2);
57 return v2;
58}
59
60}
61
62
63
64namespace carto
65{
67}
68
69#endif
70
Feature Selector :
Definition dimreductor.h:17
virtual DimReductor * clone() const =0
DimReductor & operator=(const DimReductor &)
Definition dimreductor.h:46
virtual void buildTree(Tree &tr) const =0
virtual unsigned int reducedDim() const =0
virtual void transform(const std::vector< double > &src, std::vector< double > &dst) const =0
virtual std::vector< double > * transform(const std::vector< double > &v) const
Definition dimreductor.h:52
virtual const std::string typeName() const =0
#define DECLARE_GENERIC_OBJECT_TYPE(T)