Jazz 1.26.+
Loading...
Searching...
No Matches
bebop.h
1/* Jazz (c) 2018-2026 kaalam.ai (The Authors of Jazz), using (under the same license):
2
3 1. Biomodelling - The AATBlockQueue class (c) Jacques BasaldĂșa, 2009-2012 licensed
4 exclusively for the use in the Jazz server software.
5
6 Copyright 2009-2012 Jacques BasaldĂșa
7
8 2. BBVA - Jazz: A lightweight analytical web server for data-driven applications.
9
10 Copyright 2016-2017 Banco Bilbao Vizcaya Argentaria, S.A.
11
12 This product includes software developed at
13
14 BBVA (https://www.bbva.com/)
15
16 3. LMDB, Copyright 2011-2017 Howard Chu, Symas Corp. All rights reserved.
17
18 Licensed under http://www.OpenLDAP.org/license.html
19
20
21 Licensed under the Apache License, Version 2.0 (the "License");
22 you may not use this file except in compliance with the License.
23 You may obtain a copy of the License at
24
25 http://www.apache.org/licenses/LICENSE-2.0
26
27 Unless required by applicable law or agreed to in writing, software
28 distributed under the License is distributed on an "AS IS" BASIS,
29 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30 See the License for the specific language governing permissions and
31 limitations under the License.
32*/
33
34
35#include "src/jazz_bebop/casters.h"
36
37#if defined CATCH_TEST
38#ifndef INCLUDED_JAZZ_CATCH2
39#define INCLUDED_JAZZ_CATCH2
40
41#include "src/catch2/catch.hpp"
42
43#endif
44#endif
45
46
47#ifndef INCLUDED_JAZZ_BEBOP_BEBOP
48#define INCLUDED_JAZZ_BEBOP_BEBOP
49
50
51//TODO: All this Fields idea is obsolete. The Fields server is just a Space, but the function is still needed.
52//The Field (API) - Since A Snippet is immutable, the Field creates a new one that replaces the old one.
53
54
55// /** \brief Fields: A Space for Snippets.
56
57// A Fields is Space interface to the base `index` of the Volatile Container. The entity is the Fields and the key is the name of the snippet.
58
59// A field is a namespace inside Fields.
60// */
61// class Fields : public Space {
62
63// public:
64
65// Fields(pBaseAPI api);
66
67// virtual StatusCode start();
68
69// virtual pChar const id();
70
71// private:
72
73// Name storage_ent; ///< The name of the storage entity (Typically an lmdb database with the metadata of all SemSpaces).
74// pVolatile p_volatile; ///< The Volatile container
75// pPersisted p_persisted; ///< The Persisted container
76// pBaseAPI p_api; ///< A pointer to the BaseAPI that provides access to containers.
77// };
78// typedef Fields *pFields; ///< A pointer to a Fields
79
80
84namespace jazz_bebop
85{
86
91class Bebop : public BaseAPI {
92
93 public:
94
95 Bebop(pLogger a_logger, pConfigFile a_config, pChannels a_channels, pVolatile a_volatile, pPersisted a_persisted, pCore a_core);
96 ~Bebop();
97
98 virtual pChar const id();
99
100 StatusCode start ();
102
104};
105typedef Bebop *pBebop;
106
107
108#ifdef CATCH_TEST
109
110// Instancing Bebop
111// ----------------
112
113extern Bebop BOP;
114
115#endif
116
117
118} // namespace jazz_bebop
119
120#endif // ifndef INCLUDED_JAZZ_BEBOP_BEBOP
Bebop: The compiler.
Definition bebop.h:91
virtual pChar const id()
Definition bebop.cpp:139
StatusCode start()
Definition bebop.cpp:149
StatusCode shut_down()
Definition bebop.cpp:166
void base_names(BaseNames &base_names)
Definition bebop.cpp:179
BaseAPI: The parent of API and Core.
Definition base_api.h:122
Core: The execution unit is now a wrapper around onnx-runtime.
Definition core.h:93
Channels: A Container doing block transactions across media (files, folders, shell,...
Definition channel.h:242
A configuration file as a key/value store.
Definition utils.h:218
A simple logger.
Definition utils.h:248
Persisted: A Service to manage data objects in LMDB.
Definition persisted.h:111
Volatile: A Service to manage data objects in RAM.
Definition volatile.h:243
The Bop compiler.
Definition bebop.cpp:115
Bebop * pBebop
A pointer to a Bebop compiler.
Definition bebop.h:105
std::map< String, pContainer > BaseNames
A map of names for the containers (or structure engines like "map" or "tree" inside Volatile).
Definition container.h:157
char * pChar
A pointer to a char buffer.
Definition types.h:189
int StatusCode
Type returned by the Service API.
Definition utils.h:142