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 Soumyajit De 00008 */ 00009 00010 #ifndef STORE_VECTOR_AGGREGATOR_H_ 00011 #define STORE_VECTOR_AGGREGATOR_H_ 00012 00013 #include <shogun/lib/config.h> 00014 #include <shogun/lib/computation/aggregator/JobResultAggregator.h> 00015 00016 namespace shogun 00017 { 00018 class CJobResult; 00019 template<class T> class SGVector; 00020 00024 template<class T> class CStoreVectorAggregator : public CJobResultAggregator 00025 { 00026 public: 00028 CStoreVectorAggregator(); 00029 00035 CStoreVectorAggregator(index_t dimension); 00036 00038 virtual ~CStoreVectorAggregator(); 00039 00046 virtual void submit_result(CJobResult* result); 00047 00052 virtual void finalize() = 0; 00053 00055 virtual const char* get_name() const 00056 { 00057 return "StoreVectorAggregator"; 00058 } 00059 protected: 00061 SGVector<T> m_aggregate; 00062 00063 private: 00065 void init(); 00066 }; 00067 00068 } 00069 00070 #endif // STORE_VECTOR_AGGREGATOR_H_