SHOGUN
v3.2.0
|
00001 /* 00002 * This program is free software; you can redistribute it and/or modify 00003 * it under the terms of the GNU General Public License as published by 00004 * the Free Software Foundation; either version 3 of the License, or 00005 * (at your option) any later version. 00006 * 00007 * Written (W) 2013 Kevin Hughes 00008 */ 00009 00010 #ifndef UWEDGESEP_H_ 00011 #define UWEDGESEP_H_ 00012 00013 #include <shogun/lib/config.h> 00014 #ifdef HAVE_EIGEN3 00015 #include <shogun/lib/SGNDArray.h> 00016 #include <shogun/features/Features.h> 00017 #include <shogun/converter/ica/ICAConverter.h> 00018 00019 namespace shogun 00020 { 00021 00022 class CFeatures; 00023 00035 class CUWedgeSep: public CICAConverter 00036 { 00037 public: 00038 00040 CUWedgeSep(); 00041 00043 virtual ~CUWedgeSep(); 00044 00048 virtual CFeatures* apply(CFeatures* features); 00049 00053 SGVector<float64_t> get_tau() const; 00054 00058 void set_tau(SGVector<float64_t> tau); 00059 00063 SGNDArray<float64_t> get_covs() const; 00064 00066 virtual const char* get_name() const { return "UWedgeSep"; }; 00067 00068 protected: 00069 00071 void init(); 00072 00073 private: 00074 00076 SGVector<float64_t> m_tau; 00077 00079 SGNDArray<float64_t> m_covs; 00080 }; 00081 } 00082 #endif // HAVE_EIGEN3 00083 #endif // UWEDGESEP