forked from bartvdbraak/blender
Fluid: Updated Mantaflow source files
New files contain updated sampling function (support for maximum number of particles cap).
This commit is contained in:
parent
65e1d43f0b
commit
c9cc5ad1c0
@ -322,6 +322,7 @@ template<class T> int readPdataUni(const std::string &name, ParticleDataImpl<T>
|
||||
UniPartHeader head;
|
||||
assertMsg(gzread(gzf, &head, sizeof(UniPartHeader)) == sizeof(UniPartHeader),
|
||||
"can't read file, no header present");
|
||||
pdata->getParticleSys()->resize(head.dim); // ensure that parent particle system has same size
|
||||
pdata->resize(head.dim);
|
||||
|
||||
assertMsg(head.dim == pdata->size(), "pdata size doesn't match");
|
||||
|
2
extern/mantaflow/preprocessed/gitinfo.h
vendored
2
extern/mantaflow/preprocessed/gitinfo.h
vendored
@ -1,3 +1,3 @@
|
||||
|
||||
|
||||
#define MANTA_GIT_VERSION "commit 3370c2014ad7192041cb4fbed19ed74ae9725fb5"
|
||||
#define MANTA_GIT_VERSION "commit 841bfd09c068dfb95637c0ec14fa78305286a433"
|
||||
|
2
extern/mantaflow/preprocessed/particle.cpp
vendored
2
extern/mantaflow/preprocessed/particle.cpp
vendored
@ -29,7 +29,7 @@ using namespace std;
|
||||
namespace Manta {
|
||||
|
||||
ParticleBase::ParticleBase(FluidSolver *parent)
|
||||
: PbClass(parent), mAllowCompress(true), mFreePdata(false)
|
||||
: PbClass(parent), mAllowCompress(true), mFreePdata(false), mMaxParticles(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
106
extern/mantaflow/preprocessed/particle.h
vendored
106
extern/mantaflow/preprocessed/particle.h
vendored
@ -100,6 +100,17 @@ class ParticleBase : public PbClass {
|
||||
//! threads)
|
||||
inline void addBuffered(const Vec3 &pos, int flag = 0);
|
||||
|
||||
virtual void resize(IndexInt size)
|
||||
{
|
||||
assertMsg(false, "Dont use, override...");
|
||||
return;
|
||||
}
|
||||
virtual void resizeAll(IndexInt size)
|
||||
{
|
||||
assertMsg(false, "Dont use, override...");
|
||||
return;
|
||||
}
|
||||
|
||||
//! particle data functions
|
||||
|
||||
//! create a particle data object
|
||||
@ -152,6 +163,20 @@ class ParticleBase : public PbClass {
|
||||
return mPartData[i];
|
||||
}
|
||||
|
||||
//! expose maximum number of particles to python
|
||||
int mMaxParticles;
|
||||
static PyObject *_GET_mMaxParticles(PyObject *self, void *cl)
|
||||
{
|
||||
ParticleBase *pbo = dynamic_cast<ParticleBase *>(Pb::objFromPy(self));
|
||||
return toPy(pbo->mMaxParticles);
|
||||
}
|
||||
static int _SET_mMaxParticles(PyObject *self, PyObject *val, void *cl)
|
||||
{
|
||||
ParticleBase *pbo = dynamic_cast<ParticleBase *>(Pb::objFromPy(self));
|
||||
pbo->mMaxParticles = fromPy<int>(val);
|
||||
return 0;
|
||||
}
|
||||
|
||||
protected:
|
||||
//! new particle candidates
|
||||
std::vector<Vec3> mNewBufferPos;
|
||||
@ -431,8 +456,14 @@ template<class S> class ParticleSystem : public ParticleBase {
|
||||
}
|
||||
//! insert buffered positions as new particles, update additional particle data
|
||||
void insertBufferedParticles();
|
||||
//! resize only the data vector, only use if you know what you're doing, otherwise use
|
||||
//! resizeAll()
|
||||
virtual void resize(IndexInt size)
|
||||
{
|
||||
mData.resize(size);
|
||||
}
|
||||
//! resize data vector, and all pdata fields
|
||||
void resizeAll(IndexInt newsize);
|
||||
virtual void resizeAll(IndexInt size);
|
||||
|
||||
//! adding and deleting
|
||||
inline void kill(IndexInt idx);
|
||||
@ -877,11 +908,6 @@ class ParticleIndexSystem : public ParticleSystem<ParticleIndexData> {
|
||||
return -1;
|
||||
}
|
||||
};
|
||||
//! we only need a resize function...
|
||||
void resize(IndexInt size)
|
||||
{
|
||||
mData.resize(size);
|
||||
}
|
||||
public:
|
||||
PbArgs _args;
|
||||
}
|
||||
@ -2479,28 +2505,66 @@ template<class S> void ParticleSystem<S>::insertBufferedParticles()
|
||||
for (IndexInt i = 0; i < (IndexInt)mData.size(); ++i)
|
||||
mData[i].flag &= ~PNEW;
|
||||
|
||||
if (mNewBufferPos.size() == 0)
|
||||
if (mNewBufferPos.empty())
|
||||
return;
|
||||
IndexInt newCnt = mData.size();
|
||||
resizeAll(newCnt + mNewBufferPos.size());
|
||||
IndexInt bufferSize = mNewBufferPos.size();
|
||||
IndexInt partsSize = mData.size();
|
||||
|
||||
if (mMaxParticles > 0)
|
||||
assertMsg(mMaxParticles >= partsSize,
|
||||
"Particle system cannot contain more particles that the maximum allowed number");
|
||||
|
||||
// max number of new particles that can be inserted, adjusted buffer size when using maxParticles
|
||||
// field
|
||||
IndexInt numNewParts = (mMaxParticles > 0) ? mMaxParticles - mData.size() : bufferSize;
|
||||
if (numNewParts > bufferSize)
|
||||
numNewParts = bufferSize; // upper clamp
|
||||
|
||||
assertMsg(numNewParts >= 0, "Must not have negative number of new particles");
|
||||
|
||||
// new size of particle system
|
||||
IndexInt newSize = mData.size() + numNewParts;
|
||||
if (mMaxParticles > 0)
|
||||
assertMsg(newSize <= mMaxParticles,
|
||||
"Particle system cannot contain more particles that the maximum allowed number");
|
||||
resizeAll(newSize);
|
||||
|
||||
int insertFlag;
|
||||
Vec3 insertPos;
|
||||
static RandomStream mRand(9832);
|
||||
for (IndexInt i = 0; i < numNewParts; ++i) {
|
||||
|
||||
// get random index in newBuffer vector
|
||||
// we are inserting particles randomly so that they are sampled uniformly in the fluid region
|
||||
// otherwise, regions of fluid can remain completely empty once mData.size() == maxParticles is
|
||||
// reached.
|
||||
int randIndex = floor(mRand.getReal() * mNewBufferPos.size());
|
||||
|
||||
// get elements from new buffers with random index
|
||||
std::swap(mNewBufferPos[randIndex], mNewBufferPos.back());
|
||||
insertPos = mNewBufferPos.back();
|
||||
mNewBufferPos.pop_back();
|
||||
|
||||
insertFlag = 0;
|
||||
if (!mNewBufferFlag.empty()) {
|
||||
std::swap(mNewBufferFlag[randIndex], mNewBufferFlag.back());
|
||||
insertFlag = mNewBufferFlag.back();
|
||||
mNewBufferFlag.pop_back();
|
||||
}
|
||||
|
||||
mData[partsSize].pos = insertPos;
|
||||
mData[partsSize].flag = PNEW | insertFlag;
|
||||
|
||||
for (IndexInt i = 0; i < (IndexInt)mNewBufferPos.size(); ++i) {
|
||||
int flag = (mNewBufferFlag.size() > 0) ? mNewBufferFlag[i] : 0;
|
||||
// note, other fields are not initialized here...
|
||||
mData[newCnt].pos = mNewBufferPos[i];
|
||||
mData[newCnt].flag = PNEW | flag;
|
||||
// now init pdata fields from associated grids...
|
||||
for (IndexInt pd = 0; pd < (IndexInt)mPdataReal.size(); ++pd)
|
||||
mPdataReal[pd]->initNewValue(newCnt, mNewBufferPos[i]);
|
||||
mPdataReal[pd]->initNewValue(partsSize, insertPos);
|
||||
for (IndexInt pd = 0; pd < (IndexInt)mPdataVec3.size(); ++pd)
|
||||
mPdataVec3[pd]->initNewValue(newCnt, mNewBufferPos[i]);
|
||||
mPdataVec3[pd]->initNewValue(partsSize, insertPos);
|
||||
for (IndexInt pd = 0; pd < (IndexInt)mPdataInt.size(); ++pd)
|
||||
mPdataInt[pd]->initNewValue(newCnt, mNewBufferPos[i]);
|
||||
newCnt++;
|
||||
mPdataInt[pd]->initNewValue(partsSize, insertPos);
|
||||
partsSize++;
|
||||
}
|
||||
if (mNewBufferPos.size() > 0)
|
||||
debMsg("Added & initialized " << (IndexInt)mNewBufferPos.size() << " particles",
|
||||
2); // debug info
|
||||
debMsg("Added & initialized " << numNewParts << " particles", 2); // debug info
|
||||
mNewBufferPos.clear();
|
||||
mNewBufferFlag.clear();
|
||||
}
|
||||
|
227
extern/mantaflow/preprocessed/particle.h.reg.cpp
vendored
227
extern/mantaflow/preprocessed/particle.h.reg.cpp
vendored
@ -29,279 +29,283 @@ static const Pb::Register _R_21("ParticleBase", "ParticleBase", "PbClass");
|
||||
template<> const char *Namify<ParticleBase>::S = "ParticleBase";
|
||||
static const Pb::Register _R_22("ParticleBase", "ParticleBase", ParticleBase::_W_0);
|
||||
static const Pb::Register _R_23("ParticleBase", "create", ParticleBase::_W_1);
|
||||
static const Pb::Register _R_24("ParticleBase",
|
||||
"maxParticles",
|
||||
ParticleBase::_GET_mMaxParticles,
|
||||
ParticleBase::_SET_mMaxParticles);
|
||||
#endif
|
||||
#ifdef _C_ParticleDataBase
|
||||
static const Pb::Register _R_24("ParticleDataBase", "ParticleDataBase", "PbClass");
|
||||
static const Pb::Register _R_25("ParticleDataBase", "ParticleDataBase", "PbClass");
|
||||
template<> const char *Namify<ParticleDataBase>::S = "ParticleDataBase";
|
||||
static const Pb::Register _R_25("ParticleDataBase", "ParticleDataBase", ParticleDataBase::_W_21);
|
||||
static const Pb::Register _R_26("ParticleDataBase", "ParticleDataBase", ParticleDataBase::_W_21);
|
||||
#endif
|
||||
#ifdef _C_ParticleDataImpl
|
||||
static const Pb::Register _R_26("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_27("ParticleDataImpl<int>",
|
||||
"ParticleDataImpl<int>",
|
||||
"ParticleDataBase");
|
||||
template<> const char *Namify<ParticleDataImpl<int>>::S = "ParticleDataImpl<int>";
|
||||
static const Pb::Register _R_27("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_28("ParticleDataImpl<int>",
|
||||
"ParticleDataImpl",
|
||||
ParticleDataImpl<int>::_W_22);
|
||||
static const Pb::Register _R_28("ParticleDataImpl<int>", "clear", ParticleDataImpl<int>::_W_23);
|
||||
static const Pb::Register _R_29("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_29("ParticleDataImpl<int>", "clear", ParticleDataImpl<int>::_W_23);
|
||||
static const Pb::Register _R_30("ParticleDataImpl<int>",
|
||||
"setSource",
|
||||
ParticleDataImpl<int>::_W_24);
|
||||
static const Pb::Register _R_30("ParticleDataImpl<int>", "copyFrom", ParticleDataImpl<int>::_W_25);
|
||||
static const Pb::Register _R_31("ParticleDataImpl<int>", "setConst", ParticleDataImpl<int>::_W_26);
|
||||
static const Pb::Register _R_32("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_31("ParticleDataImpl<int>", "copyFrom", ParticleDataImpl<int>::_W_25);
|
||||
static const Pb::Register _R_32("ParticleDataImpl<int>", "setConst", ParticleDataImpl<int>::_W_26);
|
||||
static const Pb::Register _R_33("ParticleDataImpl<int>",
|
||||
"setConstRange",
|
||||
ParticleDataImpl<int>::_W_27);
|
||||
static const Pb::Register _R_33("ParticleDataImpl<int>", "add", ParticleDataImpl<int>::_W_28);
|
||||
static const Pb::Register _R_34("ParticleDataImpl<int>", "sub", ParticleDataImpl<int>::_W_29);
|
||||
static const Pb::Register _R_35("ParticleDataImpl<int>", "addConst", ParticleDataImpl<int>::_W_30);
|
||||
static const Pb::Register _R_36("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_34("ParticleDataImpl<int>", "add", ParticleDataImpl<int>::_W_28);
|
||||
static const Pb::Register _R_35("ParticleDataImpl<int>", "sub", ParticleDataImpl<int>::_W_29);
|
||||
static const Pb::Register _R_36("ParticleDataImpl<int>", "addConst", ParticleDataImpl<int>::_W_30);
|
||||
static const Pb::Register _R_37("ParticleDataImpl<int>",
|
||||
"addScaled",
|
||||
ParticleDataImpl<int>::_W_31);
|
||||
static const Pb::Register _R_37("ParticleDataImpl<int>", "mult", ParticleDataImpl<int>::_W_32);
|
||||
static const Pb::Register _R_38("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_38("ParticleDataImpl<int>", "mult", ParticleDataImpl<int>::_W_32);
|
||||
static const Pb::Register _R_39("ParticleDataImpl<int>",
|
||||
"multConst",
|
||||
ParticleDataImpl<int>::_W_33);
|
||||
static const Pb::Register _R_39("ParticleDataImpl<int>", "safeDiv", ParticleDataImpl<int>::_W_34);
|
||||
static const Pb::Register _R_40("ParticleDataImpl<int>", "clamp", ParticleDataImpl<int>::_W_35);
|
||||
static const Pb::Register _R_41("ParticleDataImpl<int>", "clampMin", ParticleDataImpl<int>::_W_36);
|
||||
static const Pb::Register _R_42("ParticleDataImpl<int>", "clampMax", ParticleDataImpl<int>::_W_37);
|
||||
static const Pb::Register _R_43("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_40("ParticleDataImpl<int>", "safeDiv", ParticleDataImpl<int>::_W_34);
|
||||
static const Pb::Register _R_41("ParticleDataImpl<int>", "clamp", ParticleDataImpl<int>::_W_35);
|
||||
static const Pb::Register _R_42("ParticleDataImpl<int>", "clampMin", ParticleDataImpl<int>::_W_36);
|
||||
static const Pb::Register _R_43("ParticleDataImpl<int>", "clampMax", ParticleDataImpl<int>::_W_37);
|
||||
static const Pb::Register _R_44("ParticleDataImpl<int>",
|
||||
"getMaxAbs",
|
||||
ParticleDataImpl<int>::_W_38);
|
||||
static const Pb::Register _R_44("ParticleDataImpl<int>", "getMax", ParticleDataImpl<int>::_W_39);
|
||||
static const Pb::Register _R_45("ParticleDataImpl<int>", "getMin", ParticleDataImpl<int>::_W_40);
|
||||
static const Pb::Register _R_46("ParticleDataImpl<int>", "sum", ParticleDataImpl<int>::_W_41);
|
||||
static const Pb::Register _R_47("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_45("ParticleDataImpl<int>", "getMax", ParticleDataImpl<int>::_W_39);
|
||||
static const Pb::Register _R_46("ParticleDataImpl<int>", "getMin", ParticleDataImpl<int>::_W_40);
|
||||
static const Pb::Register _R_47("ParticleDataImpl<int>", "sum", ParticleDataImpl<int>::_W_41);
|
||||
static const Pb::Register _R_48("ParticleDataImpl<int>",
|
||||
"sumSquare",
|
||||
ParticleDataImpl<int>::_W_42);
|
||||
static const Pb::Register _R_48("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_49("ParticleDataImpl<int>",
|
||||
"sumMagnitude",
|
||||
ParticleDataImpl<int>::_W_43);
|
||||
static const Pb::Register _R_49("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_50("ParticleDataImpl<int>",
|
||||
"setConstIntFlag",
|
||||
ParticleDataImpl<int>::_W_44);
|
||||
static const Pb::Register _R_50("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_51("ParticleDataImpl<int>",
|
||||
"printPdata",
|
||||
ParticleDataImpl<int>::_W_45);
|
||||
static const Pb::Register _R_51("ParticleDataImpl<int>", "save", ParticleDataImpl<int>::_W_46);
|
||||
static const Pb::Register _R_52("ParticleDataImpl<int>", "load", ParticleDataImpl<int>::_W_47);
|
||||
static const Pb::Register _R_53("ParticleDataImpl<int>",
|
||||
static const Pb::Register _R_52("ParticleDataImpl<int>", "save", ParticleDataImpl<int>::_W_46);
|
||||
static const Pb::Register _R_53("ParticleDataImpl<int>", "load", ParticleDataImpl<int>::_W_47);
|
||||
static const Pb::Register _R_54("ParticleDataImpl<int>",
|
||||
"getDataPointer",
|
||||
ParticleDataImpl<int>::_W_48);
|
||||
static const Pb::Register _R_54("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_55("ParticleDataImpl<Real>",
|
||||
"ParticleDataImpl<Real>",
|
||||
"ParticleDataBase");
|
||||
template<> const char *Namify<ParticleDataImpl<Real>>::S = "ParticleDataImpl<Real>";
|
||||
static const Pb::Register _R_55("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_56("ParticleDataImpl<Real>",
|
||||
"ParticleDataImpl",
|
||||
ParticleDataImpl<Real>::_W_22);
|
||||
static const Pb::Register _R_56("ParticleDataImpl<Real>", "clear", ParticleDataImpl<Real>::_W_23);
|
||||
static const Pb::Register _R_57("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_57("ParticleDataImpl<Real>", "clear", ParticleDataImpl<Real>::_W_23);
|
||||
static const Pb::Register _R_58("ParticleDataImpl<Real>",
|
||||
"setSource",
|
||||
ParticleDataImpl<Real>::_W_24);
|
||||
static const Pb::Register _R_58("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_59("ParticleDataImpl<Real>",
|
||||
"copyFrom",
|
||||
ParticleDataImpl<Real>::_W_25);
|
||||
static const Pb::Register _R_59("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_60("ParticleDataImpl<Real>",
|
||||
"setConst",
|
||||
ParticleDataImpl<Real>::_W_26);
|
||||
static const Pb::Register _R_60("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_61("ParticleDataImpl<Real>",
|
||||
"setConstRange",
|
||||
ParticleDataImpl<Real>::_W_27);
|
||||
static const Pb::Register _R_61("ParticleDataImpl<Real>", "add", ParticleDataImpl<Real>::_W_28);
|
||||
static const Pb::Register _R_62("ParticleDataImpl<Real>", "sub", ParticleDataImpl<Real>::_W_29);
|
||||
static const Pb::Register _R_63("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_62("ParticleDataImpl<Real>", "add", ParticleDataImpl<Real>::_W_28);
|
||||
static const Pb::Register _R_63("ParticleDataImpl<Real>", "sub", ParticleDataImpl<Real>::_W_29);
|
||||
static const Pb::Register _R_64("ParticleDataImpl<Real>",
|
||||
"addConst",
|
||||
ParticleDataImpl<Real>::_W_30);
|
||||
static const Pb::Register _R_64("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_65("ParticleDataImpl<Real>",
|
||||
"addScaled",
|
||||
ParticleDataImpl<Real>::_W_31);
|
||||
static const Pb::Register _R_65("ParticleDataImpl<Real>", "mult", ParticleDataImpl<Real>::_W_32);
|
||||
static const Pb::Register _R_66("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_66("ParticleDataImpl<Real>", "mult", ParticleDataImpl<Real>::_W_32);
|
||||
static const Pb::Register _R_67("ParticleDataImpl<Real>",
|
||||
"multConst",
|
||||
ParticleDataImpl<Real>::_W_33);
|
||||
static const Pb::Register _R_67("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_68("ParticleDataImpl<Real>",
|
||||
"safeDiv",
|
||||
ParticleDataImpl<Real>::_W_34);
|
||||
static const Pb::Register _R_68("ParticleDataImpl<Real>", "clamp", ParticleDataImpl<Real>::_W_35);
|
||||
static const Pb::Register _R_69("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_69("ParticleDataImpl<Real>", "clamp", ParticleDataImpl<Real>::_W_35);
|
||||
static const Pb::Register _R_70("ParticleDataImpl<Real>",
|
||||
"clampMin",
|
||||
ParticleDataImpl<Real>::_W_36);
|
||||
static const Pb::Register _R_70("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_71("ParticleDataImpl<Real>",
|
||||
"clampMax",
|
||||
ParticleDataImpl<Real>::_W_37);
|
||||
static const Pb::Register _R_71("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_72("ParticleDataImpl<Real>",
|
||||
"getMaxAbs",
|
||||
ParticleDataImpl<Real>::_W_38);
|
||||
static const Pb::Register _R_72("ParticleDataImpl<Real>", "getMax", ParticleDataImpl<Real>::_W_39);
|
||||
static const Pb::Register _R_73("ParticleDataImpl<Real>", "getMin", ParticleDataImpl<Real>::_W_40);
|
||||
static const Pb::Register _R_74("ParticleDataImpl<Real>", "sum", ParticleDataImpl<Real>::_W_41);
|
||||
static const Pb::Register _R_75("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_73("ParticleDataImpl<Real>", "getMax", ParticleDataImpl<Real>::_W_39);
|
||||
static const Pb::Register _R_74("ParticleDataImpl<Real>", "getMin", ParticleDataImpl<Real>::_W_40);
|
||||
static const Pb::Register _R_75("ParticleDataImpl<Real>", "sum", ParticleDataImpl<Real>::_W_41);
|
||||
static const Pb::Register _R_76("ParticleDataImpl<Real>",
|
||||
"sumSquare",
|
||||
ParticleDataImpl<Real>::_W_42);
|
||||
static const Pb::Register _R_76("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_77("ParticleDataImpl<Real>",
|
||||
"sumMagnitude",
|
||||
ParticleDataImpl<Real>::_W_43);
|
||||
static const Pb::Register _R_77("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_78("ParticleDataImpl<Real>",
|
||||
"setConstIntFlag",
|
||||
ParticleDataImpl<Real>::_W_44);
|
||||
static const Pb::Register _R_78("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_79("ParticleDataImpl<Real>",
|
||||
"printPdata",
|
||||
ParticleDataImpl<Real>::_W_45);
|
||||
static const Pb::Register _R_79("ParticleDataImpl<Real>", "save", ParticleDataImpl<Real>::_W_46);
|
||||
static const Pb::Register _R_80("ParticleDataImpl<Real>", "load", ParticleDataImpl<Real>::_W_47);
|
||||
static const Pb::Register _R_81("ParticleDataImpl<Real>",
|
||||
static const Pb::Register _R_80("ParticleDataImpl<Real>", "save", ParticleDataImpl<Real>::_W_46);
|
||||
static const Pb::Register _R_81("ParticleDataImpl<Real>", "load", ParticleDataImpl<Real>::_W_47);
|
||||
static const Pb::Register _R_82("ParticleDataImpl<Real>",
|
||||
"getDataPointer",
|
||||
ParticleDataImpl<Real>::_W_48);
|
||||
static const Pb::Register _R_82("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_83("ParticleDataImpl<Vec3>",
|
||||
"ParticleDataImpl<Vec3>",
|
||||
"ParticleDataBase");
|
||||
template<> const char *Namify<ParticleDataImpl<Vec3>>::S = "ParticleDataImpl<Vec3>";
|
||||
static const Pb::Register _R_83("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_84("ParticleDataImpl<Vec3>",
|
||||
"ParticleDataImpl",
|
||||
ParticleDataImpl<Vec3>::_W_22);
|
||||
static const Pb::Register _R_84("ParticleDataImpl<Vec3>", "clear", ParticleDataImpl<Vec3>::_W_23);
|
||||
static const Pb::Register _R_85("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_85("ParticleDataImpl<Vec3>", "clear", ParticleDataImpl<Vec3>::_W_23);
|
||||
static const Pb::Register _R_86("ParticleDataImpl<Vec3>",
|
||||
"setSource",
|
||||
ParticleDataImpl<Vec3>::_W_24);
|
||||
static const Pb::Register _R_86("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_87("ParticleDataImpl<Vec3>",
|
||||
"copyFrom",
|
||||
ParticleDataImpl<Vec3>::_W_25);
|
||||
static const Pb::Register _R_87("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_88("ParticleDataImpl<Vec3>",
|
||||
"setConst",
|
||||
ParticleDataImpl<Vec3>::_W_26);
|
||||
static const Pb::Register _R_88("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_89("ParticleDataImpl<Vec3>",
|
||||
"setConstRange",
|
||||
ParticleDataImpl<Vec3>::_W_27);
|
||||
static const Pb::Register _R_89("ParticleDataImpl<Vec3>", "add", ParticleDataImpl<Vec3>::_W_28);
|
||||
static const Pb::Register _R_90("ParticleDataImpl<Vec3>", "sub", ParticleDataImpl<Vec3>::_W_29);
|
||||
static const Pb::Register _R_91("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_90("ParticleDataImpl<Vec3>", "add", ParticleDataImpl<Vec3>::_W_28);
|
||||
static const Pb::Register _R_91("ParticleDataImpl<Vec3>", "sub", ParticleDataImpl<Vec3>::_W_29);
|
||||
static const Pb::Register _R_92("ParticleDataImpl<Vec3>",
|
||||
"addConst",
|
||||
ParticleDataImpl<Vec3>::_W_30);
|
||||
static const Pb::Register _R_92("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_93("ParticleDataImpl<Vec3>",
|
||||
"addScaled",
|
||||
ParticleDataImpl<Vec3>::_W_31);
|
||||
static const Pb::Register _R_93("ParticleDataImpl<Vec3>", "mult", ParticleDataImpl<Vec3>::_W_32);
|
||||
static const Pb::Register _R_94("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_94("ParticleDataImpl<Vec3>", "mult", ParticleDataImpl<Vec3>::_W_32);
|
||||
static const Pb::Register _R_95("ParticleDataImpl<Vec3>",
|
||||
"multConst",
|
||||
ParticleDataImpl<Vec3>::_W_33);
|
||||
static const Pb::Register _R_95("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_96("ParticleDataImpl<Vec3>",
|
||||
"safeDiv",
|
||||
ParticleDataImpl<Vec3>::_W_34);
|
||||
static const Pb::Register _R_96("ParticleDataImpl<Vec3>", "clamp", ParticleDataImpl<Vec3>::_W_35);
|
||||
static const Pb::Register _R_97("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_97("ParticleDataImpl<Vec3>", "clamp", ParticleDataImpl<Vec3>::_W_35);
|
||||
static const Pb::Register _R_98("ParticleDataImpl<Vec3>",
|
||||
"clampMin",
|
||||
ParticleDataImpl<Vec3>::_W_36);
|
||||
static const Pb::Register _R_98("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_99("ParticleDataImpl<Vec3>",
|
||||
"clampMax",
|
||||
ParticleDataImpl<Vec3>::_W_37);
|
||||
static const Pb::Register _R_99("ParticleDataImpl<Vec3>",
|
||||
"getMaxAbs",
|
||||
ParticleDataImpl<Vec3>::_W_38);
|
||||
static const Pb::Register _R_100("ParticleDataImpl<Vec3>",
|
||||
"getMaxAbs",
|
||||
ParticleDataImpl<Vec3>::_W_38);
|
||||
static const Pb::Register _R_101("ParticleDataImpl<Vec3>",
|
||||
"getMax",
|
||||
ParticleDataImpl<Vec3>::_W_39);
|
||||
static const Pb::Register _R_101("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_102("ParticleDataImpl<Vec3>",
|
||||
"getMin",
|
||||
ParticleDataImpl<Vec3>::_W_40);
|
||||
static const Pb::Register _R_102("ParticleDataImpl<Vec3>", "sum", ParticleDataImpl<Vec3>::_W_41);
|
||||
static const Pb::Register _R_103("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_103("ParticleDataImpl<Vec3>", "sum", ParticleDataImpl<Vec3>::_W_41);
|
||||
static const Pb::Register _R_104("ParticleDataImpl<Vec3>",
|
||||
"sumSquare",
|
||||
ParticleDataImpl<Vec3>::_W_42);
|
||||
static const Pb::Register _R_104("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_105("ParticleDataImpl<Vec3>",
|
||||
"sumMagnitude",
|
||||
ParticleDataImpl<Vec3>::_W_43);
|
||||
static const Pb::Register _R_105("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_106("ParticleDataImpl<Vec3>",
|
||||
"setConstIntFlag",
|
||||
ParticleDataImpl<Vec3>::_W_44);
|
||||
static const Pb::Register _R_106("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_107("ParticleDataImpl<Vec3>",
|
||||
"printPdata",
|
||||
ParticleDataImpl<Vec3>::_W_45);
|
||||
static const Pb::Register _R_107("ParticleDataImpl<Vec3>", "save", ParticleDataImpl<Vec3>::_W_46);
|
||||
static const Pb::Register _R_108("ParticleDataImpl<Vec3>", "load", ParticleDataImpl<Vec3>::_W_47);
|
||||
static const Pb::Register _R_109("ParticleDataImpl<Vec3>",
|
||||
static const Pb::Register _R_108("ParticleDataImpl<Vec3>", "save", ParticleDataImpl<Vec3>::_W_46);
|
||||
static const Pb::Register _R_109("ParticleDataImpl<Vec3>", "load", ParticleDataImpl<Vec3>::_W_47);
|
||||
static const Pb::Register _R_110("ParticleDataImpl<Vec3>",
|
||||
"getDataPointer",
|
||||
ParticleDataImpl<Vec3>::_W_48);
|
||||
#endif
|
||||
#ifdef _C_ParticleIndexSystem
|
||||
static const Pb::Register _R_110("ParticleIndexSystem",
|
||||
static const Pb::Register _R_111("ParticleIndexSystem",
|
||||
"ParticleIndexSystem",
|
||||
"ParticleSystem<ParticleIndexData>");
|
||||
template<> const char *Namify<ParticleIndexSystem>::S = "ParticleIndexSystem";
|
||||
static const Pb::Register _R_111("ParticleIndexSystem",
|
||||
static const Pb::Register _R_112("ParticleIndexSystem",
|
||||
"ParticleIndexSystem",
|
||||
ParticleIndexSystem::_W_19);
|
||||
#endif
|
||||
#ifdef _C_ParticleSystem
|
||||
static const Pb::Register _R_112("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_113("ParticleSystem<BasicParticleData>",
|
||||
"ParticleSystem<BasicParticleData>",
|
||||
"ParticleBase");
|
||||
template<>
|
||||
const char *Namify<ParticleSystem<BasicParticleData>>::S = "ParticleSystem<BasicParticleData>";
|
||||
static const Pb::Register _R_113("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_114("ParticleSystem<BasicParticleData>",
|
||||
"ParticleSystem",
|
||||
ParticleSystem<BasicParticleData>::_W_2);
|
||||
static const Pb::Register _R_114("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_115("ParticleSystem<BasicParticleData>",
|
||||
"pySize",
|
||||
ParticleSystem<BasicParticleData>::_W_3);
|
||||
static const Pb::Register _R_115("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_116("ParticleSystem<BasicParticleData>",
|
||||
"setPos",
|
||||
ParticleSystem<BasicParticleData>::_W_4);
|
||||
static const Pb::Register _R_116("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_117("ParticleSystem<BasicParticleData>",
|
||||
"getPos",
|
||||
ParticleSystem<BasicParticleData>::_W_5);
|
||||
static const Pb::Register _R_117("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_118("ParticleSystem<BasicParticleData>",
|
||||
"getPosPdata",
|
||||
ParticleSystem<BasicParticleData>::_W_6);
|
||||
static const Pb::Register _R_118("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_119("ParticleSystem<BasicParticleData>",
|
||||
"setPosPdata",
|
||||
ParticleSystem<BasicParticleData>::_W_7);
|
||||
static const Pb::Register _R_119("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_120("ParticleSystem<BasicParticleData>",
|
||||
"clear",
|
||||
ParticleSystem<BasicParticleData>::_W_8);
|
||||
static const Pb::Register _R_120("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_121("ParticleSystem<BasicParticleData>",
|
||||
"advectInGrid",
|
||||
ParticleSystem<BasicParticleData>::_W_9);
|
||||
static const Pb::Register _R_121("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_122("ParticleSystem<BasicParticleData>",
|
||||
"projectOutside",
|
||||
ParticleSystem<BasicParticleData>::_W_10);
|
||||
static const Pb::Register _R_122("ParticleSystem<BasicParticleData>",
|
||||
static const Pb::Register _R_123("ParticleSystem<BasicParticleData>",
|
||||
"projectOutOfBnd",
|
||||
ParticleSystem<BasicParticleData>::_W_11);
|
||||
static const Pb::Register _R_123("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_124("ParticleSystem<ParticleIndexData>",
|
||||
"ParticleSystem<ParticleIndexData>",
|
||||
"ParticleBase");
|
||||
template<>
|
||||
const char *Namify<ParticleSystem<ParticleIndexData>>::S = "ParticleSystem<ParticleIndexData>";
|
||||
static const Pb::Register _R_124("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_125("ParticleSystem<ParticleIndexData>",
|
||||
"ParticleSystem",
|
||||
ParticleSystem<ParticleIndexData>::_W_2);
|
||||
static const Pb::Register _R_125("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_126("ParticleSystem<ParticleIndexData>",
|
||||
"pySize",
|
||||
ParticleSystem<ParticleIndexData>::_W_3);
|
||||
static const Pb::Register _R_126("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_127("ParticleSystem<ParticleIndexData>",
|
||||
"setPos",
|
||||
ParticleSystem<ParticleIndexData>::_W_4);
|
||||
static const Pb::Register _R_127("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_128("ParticleSystem<ParticleIndexData>",
|
||||
"getPos",
|
||||
ParticleSystem<ParticleIndexData>::_W_5);
|
||||
static const Pb::Register _R_128("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_129("ParticleSystem<ParticleIndexData>",
|
||||
"getPosPdata",
|
||||
ParticleSystem<ParticleIndexData>::_W_6);
|
||||
static const Pb::Register _R_129("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_130("ParticleSystem<ParticleIndexData>",
|
||||
"setPosPdata",
|
||||
ParticleSystem<ParticleIndexData>::_W_7);
|
||||
static const Pb::Register _R_130("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_131("ParticleSystem<ParticleIndexData>",
|
||||
"clear",
|
||||
ParticleSystem<ParticleIndexData>::_W_8);
|
||||
static const Pb::Register _R_131("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_132("ParticleSystem<ParticleIndexData>",
|
||||
"advectInGrid",
|
||||
ParticleSystem<ParticleIndexData>::_W_9);
|
||||
static const Pb::Register _R_132("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_133("ParticleSystem<ParticleIndexData>",
|
||||
"projectOutside",
|
||||
ParticleSystem<ParticleIndexData>::_W_10);
|
||||
static const Pb::Register _R_133("ParticleSystem<ParticleIndexData>",
|
||||
static const Pb::Register _R_134("ParticleSystem<ParticleIndexData>",
|
||||
"projectOutOfBnd",
|
||||
ParticleSystem<ParticleIndexData>::_W_11);
|
||||
#endif
|
||||
@ -432,6 +436,7 @@ void PbRegister_file_10()
|
||||
KEEP_UNUSED(_R_131);
|
||||
KEEP_UNUSED(_R_132);
|
||||
KEEP_UNUSED(_R_133);
|
||||
KEEP_UNUSED(_R_134);
|
||||
}
|
||||
}
|
||||
} // namespace Manta
|
Loading…
Reference in New Issue
Block a user