jubatus_core  0.1.2
Jubatus: Online machine learning framework for distributed environment
model.hpp
Go to the documentation of this file.
1 // Copyright (C) 2014 Preferred Networks and Nippon Telegraph and Telephone Corporation.
2 //
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License version 2.1 as published by the Free Software Foundation.
6 //
7 // This library is distributed in the hope that it will be useful,
8 // but WITHOUT ANY WARRANTY; without even the implied warranty of
9 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10 // Lesser General Public License for more details.
11 //
12 // You should have received a copy of the GNU Lesser General Public
13 // License along with this library; if not, write to the Free Software
14 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
15 
16 #ifndef JUBATUS_CORE_FRAMEWORK_MODEL_HPP_
17 #define JUBATUS_CORE_FRAMEWORK_MODEL_HPP_
18 
19 #include "../common/version.hpp"
20 #include "packer.hpp"
21 
22 namespace jubatus {
23 namespace core {
24 namespace framework {
25 
26 // public interface for Jubatus users
27 class model {
28  public:
29  virtual ~model();
30  virtual void pack(framework::packer& packer) const = 0;
31  virtual void unpack(msgpack::object o) = 0;
32  virtual void clear();
33 };
34 
35 } // namespace framework
36 } // namespace core
37 } // namespace jubatus
38 
39 #endif // JUBATUS_CORE_FRAMEWORK_MODEL_HPP_
virtual void pack(framework::packer &packer) const =0
virtual void unpack(msgpack::object o)=0