OmniSciDB  f17484ade4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RenderHandler.cpp
Go to the documentation of this file.
1 /*
2  * Copyright 2022 HEAVY.AI, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
23 
24 #include "Logger/Logger.h"
25 
27 
29  const size_t render_mem_bytes,
30  const size_t max_concurrent_render_sessions,
31  const bool compositor_use_last_gpu,
32  const bool enable_auto_clear_render_mem,
33  const int render_oom_retry_threshold,
34  const bool renderer_prefer_igpu,
35  const uint32_t renderer_vulkan_timeout_ms,
36  const bool renderer_use_parallel_executors,
37  const SystemParameters system_parameters)
38  : impl_(nullptr) {
39  throw std::runtime_error(
40  "Rendering is only supported in the Enterprise and Community Editions");
41 }
42 
44 
45 void RenderHandler::disconnect(const TSessionId& session) {
46  CHECK(impl_);
47 }
48 
50  TRenderResult& _return,
51  const std::shared_ptr<Catalog_Namespace::SessionInfo> session_info,
52  const int64_t widget_id,
53  std::string&& vega_json,
54  const int32_t compression_level,
55  const std::string& nonce) {
56  CHECK(impl_);
57 }
58 
59 void RenderHandler::start_render_query(TPendingRenderQuery& _return,
60  const TSessionId& session,
61  const int64_t widget_id,
62  const int16_t node_idx,
63  std::string&& vega_json) {
64  CHECK(impl_);
65 }
66 
67 void RenderHandler::execute_next_render_step(TRenderStepResult& _return,
68  const TPendingRenderQuery& pending_render,
69  const TRenderAggDataMap& merged_data) {
70  CHECK(impl_);
71 }
72 
74  TPixelTableRowResult& _return,
75  const std::shared_ptr<Catalog_Namespace::SessionInfo> session_info,
76  const int64_t widget_id,
77  const TPixel& pixel,
78  const std::map<std::string, std::vector<std::string>>& table_col_names,
79  const bool column_format,
80  const int32_t pixelRadius,
81  const std::string& nonce) {
82  CHECK(impl_);
83 }
84 
86  CHECK(impl_);
87 }
88 
90  CHECK(impl_);
91 }
92 
94  CHECK(impl_);
95  return std::string();
96 }
97 
99  const std::string& other_renderer_status_json) const {
100  CHECK(impl_);
101  return false;
102 }
103 
105  CHECK(impl_);
106 }
void clear_cpu_memory()
void execute_next_render_step(TRenderStepResult &_return, const TPendingRenderQuery &pending_render, const TRenderAggDataMap &merged_data)
void disconnect(const TSessionId &session)
void start_render_query(TPendingRenderQuery &_return, const TSessionId &session, const int64_t widget_id, const int16_t node_idx, std::string &&vega_json)
void get_result_row_for_pixel(TPixelTableRowResult &_return, const std::shared_ptr< Catalog_Namespace::SessionInfo > session_info, const int64_t widget_id, const TPixel &pixel, const std::map< std::string, std::vector< std::string >> &table_col_names, const bool column_format, const int32_t pixelRadius, const std::string &nonce)
std::unique_ptr< Impl > impl_
void clear_gpu_memory()
RenderHandler(DBHandler *db_handler, const size_t render_mem_bytes, const size_t max_conncurrent_render_sessions, const bool compositor_use_last_gpu, const bool enable_auto_clear_render_mem, const int render_oom_retry_threshold, const bool renderer_prefer_igpu, const uint32_t renderer_vulkan_timeout_ms, const bool renderer_use_parallel_executors, const SystemParameters system_parameters)
#define CHECK(condition)
Definition: Logger.h:291
std::string get_renderer_status_json() const
bool validate_renderer_status_json(const std::string &other_renderer_status_json) const
void render_vega(TRenderResult &_return, const std::shared_ptr< Catalog_Namespace::SessionInfo > session_info, const int64_t widget_id, std::string &&vega_json, const int32_t compression_level, const std::string &nonce)