1 | // fwd.hpp Forward declarations of Boost.Math distributions. |
2 | |
3 | // Copyright Paul A. Bristow 2007, 2010, 2012, 2014. |
4 | // Copyright John Maddock 2007. |
5 | |
6 | // Use, modification and distribution are subject to the |
7 | // Boost Software License, Version 1.0. |
8 | // (See accompanying file LICENSE_1_0.txt |
9 | // or copy at http://www.boost.org/LICENSE_1_0.txt) |
10 | |
11 | #ifndef BOOST_MATH_DISTRIBUTIONS_FWD_HPP |
12 | #define BOOST_MATH_DISTRIBUTIONS_FWD_HPP |
13 | |
14 | // 33 distributions at Boost 1.9.1 after adding hyperexpon and arcsine |
15 | |
16 | namespace boost{ namespace math{ |
17 | |
18 | template <class RealType, class Policy> |
19 | class arcsine_distribution; |
20 | |
21 | template <class RealType, class Policy> |
22 | class bernoulli_distribution; |
23 | |
24 | template <class RealType, class Policy> |
25 | class beta_distribution; |
26 | |
27 | template <class RealType, class Policy> |
28 | class binomial_distribution; |
29 | |
30 | template <class RealType, class Policy> |
31 | class cauchy_distribution; |
32 | |
33 | template <class RealType, class Policy> |
34 | class chi_squared_distribution; |
35 | |
36 | template <class RealType, class Policy> |
37 | class exponential_distribution; |
38 | |
39 | template <class RealType, class Policy> |
40 | class extreme_value_distribution; |
41 | |
42 | template <class RealType, class Policy> |
43 | class fisher_f_distribution; |
44 | |
45 | template <class RealType, class Policy> |
46 | class gamma_distribution; |
47 | |
48 | template <class RealType, class Policy> |
49 | class geometric_distribution; |
50 | |
51 | template <class RealType, class Policy> |
52 | class hyperexponential_distribution; |
53 | |
54 | template <class RealType, class Policy> |
55 | class hypergeometric_distribution; |
56 | |
57 | template <class RealType, class Policy> |
58 | class inverse_chi_squared_distribution; |
59 | |
60 | template <class RealType, class Policy> |
61 | class inverse_gamma_distribution; |
62 | |
63 | template <class RealType, class Policy> |
64 | class inverse_gaussian_distribution; |
65 | |
66 | template <class RealType, class Policy> |
67 | class laplace_distribution; |
68 | |
69 | template <class RealType, class Policy> |
70 | class logistic_distribution; |
71 | |
72 | template <class RealType, class Policy> |
73 | class lognormal_distribution; |
74 | |
75 | template <class RealType, class Policy> |
76 | class negative_binomial_distribution; |
77 | |
78 | template <class RealType, class Policy> |
79 | class non_central_beta_distribution; |
80 | |
81 | template <class RealType, class Policy> |
82 | class non_central_chi_squared_distribution; |
83 | |
84 | template <class RealType, class Policy> |
85 | class non_central_f_distribution; |
86 | |
87 | template <class RealType, class Policy> |
88 | class non_central_t_distribution; |
89 | |
90 | template <class RealType, class Policy> |
91 | class normal_distribution; |
92 | |
93 | template <class RealType, class Policy> |
94 | class pareto_distribution; |
95 | |
96 | template <class RealType, class Policy> |
97 | class poisson_distribution; |
98 | |
99 | template <class RealType, class Policy> |
100 | class rayleigh_distribution; |
101 | |
102 | template <class RealType, class Policy> |
103 | class skew_normal_distribution; |
104 | |
105 | template <class RealType, class Policy> |
106 | class students_t_distribution; |
107 | |
108 | template <class RealType, class Policy> |
109 | class triangular_distribution; |
110 | |
111 | template <class RealType, class Policy> |
112 | class uniform_distribution; |
113 | |
114 | template <class RealType, class Policy> |
115 | class weibull_distribution; |
116 | |
117 | }} // namespaces |
118 | |
119 | #define BOOST_MATH_DECLARE_DISTRIBUTIONS(Type, Policy)\ |
120 | typedef boost::math::arcsine_distribution<Type, Policy> arcsine;\ |
121 | typedef boost::math::bernoulli_distribution<Type, Policy> bernoulli;\ |
122 | typedef boost::math::beta_distribution<Type, Policy> beta;\ |
123 | typedef boost::math::binomial_distribution<Type, Policy> binomial;\ |
124 | typedef boost::math::cauchy_distribution<Type, Policy> cauchy;\ |
125 | typedef boost::math::chi_squared_distribution<Type, Policy> chi_squared;\ |
126 | typedef boost::math::exponential_distribution<Type, Policy> exponential;\ |
127 | typedef boost::math::extreme_value_distribution<Type, Policy> extreme_value;\ |
128 | typedef boost::math::fisher_f_distribution<Type, Policy> fisher_f;\ |
129 | typedef boost::math::gamma_distribution<Type, Policy> gamma;\ |
130 | typedef boost::math::geometric_distribution<Type, Policy> geometric;\ |
131 | typedef boost::math::hypergeometric_distribution<Type, Policy> hypergeometric;\ |
132 | typedef boost::math::inverse_chi_squared_distribution<Type, Policy> inverse_chi_squared;\ |
133 | typedef boost::math::inverse_gaussian_distribution<Type, Policy> inverse_gaussian;\ |
134 | typedef boost::math::inverse_gamma_distribution<Type, Policy> inverse_gamma;\ |
135 | typedef boost::math::laplace_distribution<Type, Policy> laplace;\ |
136 | typedef boost::math::logistic_distribution<Type, Policy> logistic;\ |
137 | typedef boost::math::lognormal_distribution<Type, Policy> lognormal;\ |
138 | typedef boost::math::negative_binomial_distribution<Type, Policy> negative_binomial;\ |
139 | typedef boost::math::non_central_beta_distribution<Type, Policy> non_central_beta;\ |
140 | typedef boost::math::non_central_chi_squared_distribution<Type, Policy> non_central_chi_squared;\ |
141 | typedef boost::math::non_central_f_distribution<Type, Policy> non_central_f;\ |
142 | typedef boost::math::non_central_t_distribution<Type, Policy> non_central_t;\ |
143 | typedef boost::math::normal_distribution<Type, Policy> normal;\ |
144 | typedef boost::math::pareto_distribution<Type, Policy> pareto;\ |
145 | typedef boost::math::poisson_distribution<Type, Policy> poisson;\ |
146 | typedef boost::math::rayleigh_distribution<Type, Policy> rayleigh;\ |
147 | typedef boost::math::skew_normal_distribution<Type, Policy> skew_normal;\ |
148 | typedef boost::math::students_t_distribution<Type, Policy> students_t;\ |
149 | typedef boost::math::triangular_distribution<Type, Policy> triangular;\ |
150 | typedef boost::math::uniform_distribution<Type, Policy> uniform;\ |
151 | typedef boost::math::weibull_distribution<Type, Policy> weibull; |
152 | |
153 | #endif // BOOST_MATH_DISTRIBUTIONS_FWD_HPP |
154 | |