SPH
ForwardDecl.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "objects/Object.h"
4 
6 
7 template <typename T>
8 class RawPtr;
9 template <typename T>
10 class AutoPtr;
11 template <typename T>
12 class SharedPtr;
13 template <typename T>
14 class Function;
15 template <typename T>
16 class Optional;
17 template <typename T>
18 class BasicOutcome;
19 
20 class IScheduler;
21 class Task;
22 class ThreadPool;
23 template <typename T>
24 class ThreadLocal;
25 
26 template <typename T>
27 class Flags;
28 
29 class Storage;
30 class Quantity;
31 enum class QuantityId;
32 class Statistics;
33 enum class StatisticsId;
34 
35 template <typename TEnum>
36 class Settings;
37 
38 enum class BodySettingsId;
39 enum class RunSettingsId;
40 
43 
44 class IMaterial;
45 class IDistribution;
46 class IBasicFinder;
47 class ILogger;
48 class IDomain;
49 class ISolver;
50 class ITimeStepping;
51 class ITimeStepCriterion;
52 
53 class DerivativeHolder;
54 
55 struct Ghost;
56 struct NeighbourRecord;
57 class MaterialView;
58 
59 enum class ContinuityEnum;
60 
NAMESPACE_SPH_BEGIN
Definition: BarnesHut.cpp:13
Common macros and basic objects.
#define NAMESPACE_SPH_END
Definition: Object.h:12
QuantityId
Unique IDs of basic quantities of SPH particles.
Definition: QuantityIds.h:19
StatisticsId
List of values that are computed and displayed every timestep.
Definition: Statistics.h:108
Wrapper of pointer that deletes the resource from destructor.
Definition: AutoPtr.h:15
Expected-like class that does not contain any value.
Definition: Outcome.h:44
Container holding derivatives and the storage they accumulate to.
Definition: Derivative.h:173
Wrapper of an integral value providing functions for reading and modifying individual bits.
Definition: Flags.h:20
Interface of objects finding neighbouring particles.
Base class for generating vertices with specific distribution.
Definition: Distribution.h:21
Base class for computational domains.
Definition: Domain.h:29
Interface providing generic (text, human readable) output of the program.
Definition: Logger.h:22
Material settings and functions specific for one material.
Definition: IMaterial.h:110
Interface that allows unified implementation of sequential and parallelized versions of algorithms.
Definition: Scheduler.h:27
Base class for all solvers.
Definition: ISolver.h:20
Base class for timestep setters.
Base object providing integration in time for all quantities.
Definition: TimeStepping.h:46
Non-owning wrapper of a material and particles with this material.
Definition: IMaterial.h:30
Wrapper of type value of which may or may not be present.
Definition: Optional.h:23
Generic container for storing scalar, vector or tensor quantity and its derivatives.
Definition: Quantity.h:200
Non-owning wrapper of pointer.
Definition: RawPtr.h:19
Generic object containing various settings and parameters of the run.
Definition: Settings.h:108
Object holding various statistics about current run.
Definition: Statistics.h:22
Container storing all quantities used within the simulations.
Definition: Storage.h:230
Task to be executed by one of available threads.
Definition: Pool.h:20
Template for storing a copy of a value for every thread in given scheduler.
Definition: ThreadLocal.h:36
Thread pool capable of executing tasks concurrently.
Definition: Pool.h:70
ContinuityEnum
Definition: Settings.h:721
BodySettingsId
Settings of a single body / gas phase / ...
Definition: Settings.h:1394
RunSettingsId
Settings relevant for whole run of the simulation.
Definition: Settings.h:949
Definition: Domain.h:22
Holds information about a neighbour particles.