Ginkgo  Generated from pipelines/1330831941 branch based on master. Ginkgo version 1.8.0
A numerical linear algebra library targeting many-core architectures
fwd_decls.hpp
1 // SPDX-FileCopyrightText: 2017 - 2024 The Ginkgo authors
2 //
3 // SPDX-License-Identifier: BSD-3-Clause
4 
5 #ifndef GKO_PUBLIC_CORE_BASE_FWD_DECLS_HPP_
6 #define GKO_PUBLIC_CORE_BASE_FWD_DECLS_HPP_
7 
8 
9 #include <ginkgo/config.hpp>
10 
11 
12 struct cublasContext;
13 
14 struct cusparseContext;
15 
16 struct CUstream_st;
17 
18 struct CUevent_st;
19 
20 struct hipblasContext;
21 
22 struct hipsparseContext;
23 
24 #if GINKGO_HIP_PLATFORM_HCC
25 struct ihipStream_t;
26 struct ihipEvent_t;
27 #define GKO_HIP_STREAM_STRUCT ihipStream_t
28 #define GKO_HIP_EVENT_STRUCT ihipEvent_t
29 #else
30 #define GKO_HIP_STREAM_STRUCT CUstream_st
31 #define GKO_HIP_EVENT_STRUCT CUevent_st
32 #endif
33 
34 
35 // after intel/llvm September'22 release, which uses major version 6, they
36 // introduce another inline namespace _V1.
37 #if GINKGO_DPCPP_MAJOR_VERSION >= 6
38 namespace sycl {
39 inline namespace _V1 {
40 
41 
42 class queue;
43 class event;
44 
45 
46 } // namespace _V1
47 } // namespace sycl
48 #else // GINKGO_DPCPP_MAJOR_VERSION < 6
49 inline namespace cl {
50 namespace sycl {
51 
52 
53 class queue;
54 class event;
55 
56 
57 } // namespace sycl
58 } // namespace cl
59 #endif
60 
61 
62 #endif // GKO_PUBLIC_CORE_BASE_FWD_DECLS_HPP_