plaidml.hpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. // This file is part of OpenCV project.
  2. // It is subject to the license terms in the LICENSE file found in the top-level directory
  3. // of this distribution and at http://opencv.org/license.html.
  4. //
  5. // Copyright (C) 2019 Intel Corporation
  6. #ifndef OPENCV_GAPI_PLAIDML_PLAIDML_HPP
  7. #define OPENCV_GAPI_PLAIDML_PLAIDML_HPP
  8. #include <string>
  9. #include <opencv2/gapi/gcommon.hpp> // CompileArgTag
  10. namespace cv
  11. {
  12. namespace gapi
  13. {
  14. /**
  15. * @brief This namespace contains G-API PlaidML backend functions,
  16. * structures, and symbols.
  17. */
  18. namespace plaidml
  19. {
  20. /** \addtogroup gapi_compile_args
  21. * @{
  22. */
  23. /**
  24. * @brief This structure represents the basic parameters for the experimental
  25. * PlaidML backend.
  26. */
  27. struct config
  28. {
  29. std::string dev_id; //!< Device ID. Refer to PlaidML documentation for details.
  30. std::string trg_id; //!< Target ID. Refer to PlaidML documentation for details.
  31. };
  32. /** @} gapi_compile_args */
  33. } // namespace plaidml
  34. } // namespace gapi
  35. namespace detail
  36. {
  37. template<> struct CompileArgTag<cv::gapi::plaidml::config>
  38. {
  39. static const char* tag() { return "gapi.plaidml.config"; }
  40. };
  41. } // namespace detail
  42. } // namespace cv
  43. #endif // OPENCV_GAPI_PLAIDML_PLAIDML_HPP