1/*
2 * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved.
3 *
4 * NVIDIA CORPORATION and its licensors retain all intellectual property
5 * and proprietary rights in and to this software, related documentation
6 * and any modifications thereto. Any use, reproduction, disclosure or
7 * distribution of this software and related documentation without an express
8 * license agreement from NVIDIA CORPORATION is strictly prohibited.
9 */
10// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.
11// Copyright (c) 2001-2004 NovodeX AG. All rights reserved.
12
13
14#ifndef PX_PARTICLE_FLAG
15#define PX_PARTICLE_FLAG
16/** \addtogroup particles
17 @{
18*/
19
20#ifndef PX_DOXYGEN
21namespace physx
22{
23#endif
24
25/**
26Particle flags are used for additional information on the particles.
27*/
28struct PxParticleFlag
29 {
30 enum Enum
31 {
32 /**
33 \brief Marks a valid particle. The particle data corresponding to these particle flags is valid, i.e. defines a particle, when set.
34 Particles that are not marked with PxParticleFlag::eVALID are ignored during simulation.
35
36 Application read only.
37 */
38 eVALID = (1<<0),
39
40 /**
41 \brief Marks a particle that has collided with a static actor shape.
42
43 Application read only.
44 */
45 eCOLLISION_WITH_STATIC = (1<<1),
46
47 /**
48 \brief Marks a particle that has collided with a dynamic actor shape.
49
50 Application read only.
51 */
52 eCOLLISION_WITH_DYNAMIC = (1<<2),
53
54 /**
55 \brief Marks a particle that has collided with a shape that has been flagged as a drain (See PxShapeFlag.ePARTICLE_DRAIN).
56
57 Application read only.
58 @see PxShapeFlag.ePARTICLE_DRAIN
59 */
60 eCOLLISION_WITH_DRAIN = (1<<3),
61
62 /**
63 \brief Marks a particle that had to be ignored for simulation, because the spatial data structure ran out of resources.
64
65 Application read only.
66 */
67 eSPATIAL_DATA_STRUCTURE_OVERFLOW = (1<<4)
68 };
69 };
70
71#ifndef PX_DOXYGEN
72} // namespace physx
73#endif
74
75/** @} */
76#endif
77