32 #ifndef VSMC_INTERNAL_FORWARD_HPP
33 #define VSMC_INTERNAL_FORWARD_HPP
38 #define VSMC_DEFINE_SMP_FORWARD(Name) \
39 template <typename T, typename = Virtual> class Initialize##Name; \
40 template <typename T, typename = Virtual> class Move##Name; \
41 template <typename T, typename = Virtual> class MonitorEval##Name; \
42 template <typename T, typename = Virtual> class PathEval##Name;
51 template <
typename>
class Sampler;
52 template <
typename>
class Particle;
53 template <
typename>
class Monitor;
54 template <
typename>
class Path;
55 template <
typename>
class SingleParticle;
56 template <
typename>
class ConstSingleParticle;
57 template <
typename>
class SingleParticleBase;
58 template <
typename>
class ConstSingleParticleBase;
60 class NormalizingConstant;
63 template <MatrixOrder, std::
size_t,
typename>
class StateMatrix;
64 #if VSMC_HAS_CXX11LIB_TUPLE
72 template <
typename,
typename = MPIDefault>
class StateMPI;
76 template <std::
size_t,
typename,
typename = CLDefault>
class StateCL;
80 #endif // VSMC_INTERNAL_FORWARD_HPP
Particle::weight_set_type subtype using MPI.
Particle::value_type subtype using OpenCL.
Particle::value_type subtype using MPI.