gslcpp
Modern-C++ Wrapper for GSL
swap.hpp
Go to the documentation of this file.
1 /// \file include/gslcpp/wrap/swap.hpp
2 /// \copyright 2022 Thomas E. Vaughan, all rights reserved.
3 /// \brief Definition of gsl::w_swap().
4 
5 #pragma once
6 #include "container.hpp" // w_vector
7 
8 namespace gsl {
9 
10 
11 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
12 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
13 /// @param u Pointer to one vector.
14 /// @param v Pointer to other vector.
15 /// @return TBD: GSL's documentation does not specify.
16 inline int w_swap(w_vector<double> *u, w_vector<double> *v) {
17  return gsl_vector_swap(u, v);
18 }
19 
20 
21 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
22 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
23 /// @param u Pointer to one vector.
24 /// @param v Pointer to other vector.
25 /// @return TBD: GSL's documentation does not specify.
26 inline int w_swap(w_vector<float> *u, w_vector<float> *v) {
27  return gsl_vector_float_swap(u, v);
28 }
29 
30 
31 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
32 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
33 /// @param u Pointer to one vector.
34 /// @param v Pointer to other vector.
35 /// @return TBD: GSL's documentation does not specify.
36 inline int w_swap(w_vector<long double> *u, w_vector<long double> *v) {
37  return gsl_vector_long_double_swap(u, v);
38 }
39 
40 
41 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
42 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
43 /// @param u Pointer to one vector.
44 /// @param v Pointer to other vector.
45 /// @return TBD: GSL's documentation does not specify.
46 inline int w_swap(w_vector<int> *u, w_vector<int> *v) {
47  return gsl_vector_int_swap(u, v);
48 }
49 
50 
51 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
52 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
53 /// @param u Pointer to one vector.
54 /// @param v Pointer to other vector.
55 /// @return TBD: GSL's documentation does not specify.
56 inline int w_swap(w_vector<unsigned> *u, w_vector<unsigned> *v) {
57  return gsl_vector_uint_swap(u, v);
58 }
59 
60 
61 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
62 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
63 /// @param u Pointer to one vector.
64 /// @param v Pointer to other vector.
65 /// @return TBD: GSL's documentation does not specify.
66 inline int w_swap(w_vector<long> *u, w_vector<long> *v) {
67  return gsl_vector_long_swap(u, v);
68 }
69 
70 
71 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
72 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
73 /// @param u Pointer to one vector.
74 /// @param v Pointer to other vector.
75 /// @return TBD: GSL's documentation does not specify.
76 inline int w_swap(w_vector<unsigned long> *u, w_vector<unsigned long> *v) {
77  return gsl_vector_ulong_swap(u, v);
78 }
79 
80 
81 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
82 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
83 /// @param u Pointer to one vector.
84 /// @param v Pointer to other vector.
85 /// @return TBD: GSL's documentation does not specify.
86 inline int w_swap(w_vector<short> *u, w_vector<short> *v) {
87  return gsl_vector_short_swap(u, v);
88 }
89 
90 
91 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
92 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
93 /// @param u Pointer to one vector.
94 /// @param v Pointer to other vector.
95 /// @return TBD: GSL's documentation does not specify.
96 inline int w_swap(w_vector<unsigned short> *u, w_vector<unsigned short> *v) {
97  return gsl_vector_ushort_swap(u, v);
98 }
99 
100 
101 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
102 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
103 /// @param u Pointer to one vector.
104 /// @param v Pointer to other vector.
105 /// @return TBD: GSL's documentation does not specify.
106 inline int w_swap(w_vector<char> *u, w_vector<char> *v) {
107  return gsl_vector_char_swap(u, v);
108 }
109 
110 
111 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
112 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
113 /// @param u Pointer to one vector.
114 /// @param v Pointer to other vector.
115 /// @return TBD: GSL's documentation does not specify.
116 inline int w_swap(w_vector<unsigned char> *u, w_vector<unsigned char> *v) {
117  return gsl_vector_uchar_swap(u, v);
118 }
119 
120 
121 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
122 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
123 /// @param u Pointer to one vector.
124 /// @param v Pointer to other vector.
125 /// @return TBD: GSL's documentation does not specify.
126 inline int w_swap(w_vector<complex<double>> *u, w_vector<complex<double>> *v) {
127  return gsl_vector_complex_swap(u, v);
128 }
129 
130 
131 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
132 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
133 /// @param u Pointer to one vector.
134 /// @param v Pointer to other vector.
135 /// @return TBD: GSL's documentation does not specify.
136 inline int w_swap(w_vector<complex<float>> *u, w_vector<complex<float>> *v) {
137  return gsl_vector_complex_float_swap(u, v);
138 }
139 
140 
141 /// Exchange elements of vector `u` and corresponding ones of vector `v`.
142 /// https://www.gnu.org/software/gsl/doc/html/vectors.html#c.gsl_vector_swap
143 /// @param u Pointer to one vector.
144 /// @param v Pointer to other vector.
145 /// @return TBD: GSL's documentation does not specify.
146 inline int
147 w_swap(w_vector<complex<long double>> *u, w_vector<complex<long double>> *v) {
148  return gsl_vector_complex_long_double_swap(u, v);
149 }
150 
151 
152 } // namespace gsl
153 
154 // EOF
gsl::w_swap
int w_swap(w_vector< complex< float >> *u, w_vector< complex< float >> *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:136
gsl::w_swap
int w_swap(w_vector< complex< double >> *u, w_vector< complex< double >> *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:126
gsl::w_swap
int w_swap(w_vector< double > *u, w_vector< double > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:16
gsl::w_swap
int w_swap(w_vector< complex< long double >> *u, w_vector< complex< long double >> *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:147
gsl::w_swap
int w_swap(w_vector< int > *u, w_vector< int > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:46
gsl::w_swap
int w_swap(w_vector< unsigned > *u, w_vector< unsigned > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:56
gsl::w_swap
int w_swap(w_vector< unsigned long > *u, w_vector< unsigned long > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:76
gsl::w_swap
int w_swap(w_vector< float > *u, w_vector< float > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:26
gsl::w_swap
int w_swap(w_vector< long double > *u, w_vector< long double > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:36
gsl::w_swap
int w_swap(w_vector< short > *u, w_vector< short > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:86
gsl::w_swap
int w_swap(w_vector< long > *u, w_vector< long > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:66
gsl::w_swap
int w_swap(w_vector< char > *u, w_vector< char > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:106
gsl::w_swap
int w_swap(w_vector< unsigned short > *u, w_vector< unsigned short > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:96
gsl
Namespace for C++-interface to GSL.
Definition: v-iface.hpp:51
gsl::w_swap
int w_swap(w_vector< unsigned char > *u, w_vector< unsigned char > *v)
Exchange elements of vector u and corresponding ones of vector v.
Definition: swap.hpp:116