/* * Copyright (C) 2024 Intel Corporation. All rights reserved. * Authors: * Gustavo A Espinoza * * * For conditions of distribution and use, see copyright notice in zlib.h */ #ifndef QATZPP_QAT_INSTANCE_HPP #define QATZPP_QAT_INSTANCE_HPP #include #include #include #include namespace qat { class Instance { public: Instance(CpaInstanceHandle); ~Instance(); CpaInstanceHandle GetHandle() { return instance_; } CpaDcInstanceCapabilities GetCapabilities(); CpaInstanceInfo2 GetInfo(); int Start(void); static std::vector> Create(); private: CpaInstanceHandle instance_; uint16_t num_intermediate_buffer_lists_; CpaBufferList **intermediate_buffer_array_; bool started_; std::mutex mutex_; }; } #endif