ANNA Suite  2020b
Multipurpose development suite for Telco applications
Loader.hpp
Go to the documentation of this file.
1 // ANNA - Anna is Not Nothingness Anymore //
2 // //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
4 // //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7 
8 
9 #ifndef anna_dbos_Loader_hpp
10 #define anna_dbos_Loader_hpp
11 
12 #include <anna/dbos/Accesor.hpp>
13 
14 namespace anna {
15 
16 namespace dbms {
17 class Database;
18 }
19 
20 namespace dbos {
21 
22 class CrossedLoader;
23 
28 class Loader : public Accesor {
29 public:
36  virtual const char* getClassName() const { return "anna::dbos::Loader"; }
37 
38 protected:
45  Loader(dbms::Database& database, const Id id = 0) : Accesor(database, id) {;}
46 
51  Loader(const Id id = 0) : Accesor(id) {;}
52 
57  virtual Index getIndex() const noexcept(false) = 0;
58 
66  virtual void upload(CrossedLoader& crossedLoader) noexcept(false) {;}
67 
68  friend class StorageArea;
69 };
70 
71 }
72 }
73 
74 #endif
75 
76 
77 
U64 Index
Definition: defines.hpp:18
Definition: Accesor.hpp:35
Loader(dbms::Database &database, const Id id=0)
Definition: Loader.hpp:45
Loader(const Id id=0)
Definition: Loader.hpp:51
Definition: Database.hpp:37
Definition: CrossedLoader.hpp:42
virtual const char * getClassName() const
Definition: Loader.hpp:36
short Id
Definition: Accesor.hpp:37
Definition: Loader.hpp:28
virtual void upload(CrossedLoader &crossedLoader) noexcept(false)
Definition: Loader.hpp:66
Definition: app.hpp:12
Definition: StorageArea.hpp:58