5#ifndef TABLEAU_HYPER_HYPERPROCESS_HPP
6#define TABLEAU_HYPER_HYPERPROCESS_HPP
9#include <hyperapi/impl/infra.hpp>
10#include <hyperapi/hyperapi.h>
15#include <unordered_map>
51 const std::string& hyperPath,
53 const std::string& userAgent = std::string(),
54 const std::unordered_map<std::string, std::string>& parameters =
55 std::unordered_map<std::string, std::string>());
72 const std::string& userAgent = std::string(),
73 const std::unordered_map<std::string, std::string>& parameters =
74 std::unordered_map<std::string, std::string>());
108 void shutdown(std::chrono::milliseconds timeoutMs = std::chrono::milliseconds(-1));
129 hyper_instance_t* handle_ =
nullptr;
131 std::
string user_agent_;
133 friend class Parameters;
139#include <hyperapi/impl/HyperProcess.impl.hpp>
Describes a network endpoint at which a Hyper server is accessible.
HyperProcess(Telemetry telemetry, const std::string &userAgent=std::string(), const std::unordered_map< std::string, std::string > ¶meters=std::unordered_map< std::string, std::string >())
Starts a Hyper process.
Endpoint getEndpoint() const
Returns the endpoint descriptor for the given Hyper process.
HyperProcess()
Constructs a HyperProcess object that does not represent a hyper process.
~HyperProcess() noexcept
Stops the Hyper process.
void shutdown(std::chrono::milliseconds timeoutMs=std::chrono::milliseconds(-1))
Shuts down the Hyper process.
bool isOpen() const noexcept
Returns whether the Hyper process is open.
HyperProcess(const std::string &hyperPath, Telemetry telemetry, const std::string &userAgent=std::string(), const std::unordered_map< std::string, std::string > ¶meters=std::unordered_map< std::string, std::string >())
Starts a Hyper process with the given parameters.
void close() noexcept
Closes this Hyper process object.
Surrogate for C++17 std::optional
The primary namespace of the Hyper API for C++.
Telemetry
The telemetry modes.
@ DoNotSendUsageDataToTableau
No telemetry data will be sent to tableau.
@ SendUsageDataToTableau
Telemetry data will be sent to tableau to help improve the Hyper API.