#include <llviewerpartsim.h>
Collaboration diagram for LLViewerPartGroup:
Public Types | |
typedef std::vector< LLPointer< LLViewerPart > > | part_list_t |
Public Member Functions | |
LLViewerPartGroup (const LLVector3 ¢er, const F32 box_radius) | |
virtual | ~LLViewerPartGroup () |
void | cleanup () |
BOOL | addPart (LLViewerPart *part, const F32 desired_size=-1.f) |
void | updateParticles (const F32 dt) |
BOOL | posInGroup (const LLVector3 &pos, const F32 desired_size=-1.f) |
void | shift (const LLVector3 &offset) |
const LLVector3 & | getCenterAgent () const |
S32 | getCount () const |
LLViewerRegion * | getRegion () const |
void | removeParticlesByID (const U32 source_id) |
Public Attributes | |
part_list_t | mParticles |
LLPointer< LLVOPartGroup > | mVOPartGroupp |
BOOL | mUniformParticles |
U32 | mID |
Protected Member Functions | |
void | removePart (const S32 part_num) |
Protected Attributes | |
LLVector3 | mCenterAgent |
F32 | mBoxRadius |
LLVector3 | mMinObjPos |
LLVector3 | mMaxObjPos |
LLViewerRegion * | mRegionp |
Definition at line 89 of file llviewerpartsim.h.
typedef std::vector<LLPointer<LLViewerPart> > LLViewerPartGroup::part_list_t |
Definition at line 106 of file llviewerpartsim.h.
Definition at line 132 of file llviewerpartsim.cpp.
References LLPipeline::addObject(), LLViewerObjectList::createObjectViewer(), f, F_SQRT3, gAgent, getCenterAgent(), getRegion(), LLAgent::getRegion(), gObjectList, gPipeline, gWorldPointer, LLVector3::isFinite(), LLViewerObject::LL_VO_PART_GROUP, llassert_always, mBoxRadius, mCenterAgent, mID, mMaxObjPos, mMinObjPos, LLSpatialGroup::mOctreeNode, mRegionp, LLMemType::MTYPE_PARTICLES, mUniformParticles, mVOPartGroupp, NULL, size, and TRUE.
LLViewerPartGroup::~LLViewerPartGroup | ( | ) | [virtual] |
Definition at line 168 of file llviewerpartsim.cpp.
References cleanup(), count, LLViewerPartSim::decPartCount(), mParticles, LLMemType::MTYPE_PARTICLES, and S32.
BOOL LLViewerPartGroup::addPart | ( | LLViewerPart * | part, | |
const F32 | desired_size = -1.f | |||
) |
Definition at line 220 of file llviewerpartsim.cpp.
References FALSE, gPipeline, LLViewerPartSim::incPartCount(), LLPartData::LL_PART_FOLLOW_VELOCITY_MASK, LLPipeline::markRebuild(), LLPartData::mFlags, mParticles, LLViewerPart::mPosAgent, LLViewerPart::mScale, LLMemType::MTYPE_PARTICLES, mUniformParticles, LLVector2::mV, mVOPartGroupp, posInGroup(), LLDrawable::REBUILD_ALL, and TRUE.
void LLViewerPartGroup::cleanup | ( | ) |
Definition at line 179 of file llviewerpartsim.cpp.
References gObjectList, LLViewerObjectList::killObject(), LLMemType::MTYPE_PARTICLES, mVOPartGroupp, and NULL.
Referenced by ~LLViewerPartGroup().
const LLVector3& LLViewerPartGroup::getCenterAgent | ( | ) | const [inline] |
Definition at line 109 of file llviewerpartsim.h.
References mCenterAgent.
Referenced by LLViewerPartGroup().
S32 LLViewerPartGroup::getCount | ( | ) | const [inline] |
Definition at line 110 of file llviewerpartsim.h.
References mParticles, and S32.
Referenced by LLVOPartGroup::updateGeometry().
LLViewerRegion* LLViewerPartGroup::getRegion | ( | ) | const [inline] |
Definition at line 111 of file llviewerpartsim.h.
References mRegionp.
Referenced by LLViewerPartGroup(), and updateParticles().
Definition at line 192 of file llviewerpartsim.cpp.
References f, FALSE, mBoxRadius, mMaxObjPos, mMinObjPos, LLMemType::MTYPE_PARTICLES, LLVector3::mV, TRUE, VX, VY, and VZ.
Referenced by addPart(), and updateParticles().
Definition at line 241 of file llviewerpartsim.cpp.
References LLViewerPartSim::decPartCount(), gPipeline, LLPipeline::markRebuild(), mParticles, LLMemType::MTYPE_PARTICLES, mVOPartGroupp, LLPointer< Type >::notNull(), LLDrawable::REBUILD_ALL, and TRUE.
Definition at line 423 of file llviewerpartsim.cpp.
References end, i, LLPartData::LL_PART_DEAD_MASK, mParticles, LLMemType::MTYPE_PARTICLES, and S32.
Definition at line 408 of file llviewerpartsim.cpp.
References count, i, mCenterAgent, mMaxObjPos, mMinObjPos, mParticles, LLMemType::MTYPE_PARTICLES, and S32.
Definition at line 253 of file llviewerpartsim.cpp.
References a, calc_desired_size(), LLViewerPartSim::decPartCount(), end, f, LLViewerRegion::getPosRegionFromAgent(), getRegion(), LLWind::getVelocity(), gObjectList, gPipeline, gWorldPointer, i, LLViewerObjectList::killObject(), LLPartData::LL_PART_BOUNCE_MASK, LLPartData::LL_PART_DEAD_MASK, LLPartData::LL_PART_FOLLOW_SRC_MASK, LLPartData::LL_PART_INTERP_COLOR_MASK, LLPartData::LL_PART_INTERP_SCALE_MASK, LLPartData::LL_PART_TARGET_LINEAR_MASK, LLPartData::LL_PART_TARGET_POS_MASK, LLPartData::LL_PART_WIND_MASK, llclamp(), LLViewerPart::mAccel, LLPipeline::markRebuild(), LLViewerPart::mColor, LLPartData::mEndColor, LLPartData::mEndScale, LLPartData::mFlags, LLViewerPart::mLastUpdateTime, LLPartData::mMaxAge, mParticles, LLViewerPart::mPartSourcep, LLViewerPart::mPosAgent, LLPartData::mPosOffset, LLViewerPart::mScale, LLPartData::mStartColor, LLPartData::mStartScale, LLMemType::MTYPE_PARTICLES, LLColor4::mV, LLVector3::mV, LLViewerPart::mVelocity, mVOPartGroupp, LLViewerPart::mVPCallback, LLViewerRegion::mWind, LLPointer< Type >::notNull(), NULL, posInGroup(), LLDrawable::REBUILD_ALL, S32, LLVector2::setVec(), LLColor4::setVec(), LLPointer< Type >::swap(), TRUE, and VZ.
F32 LLViewerPartGroup::mBoxRadius [protected] |
Definition at line 125 of file llviewerpartsim.h.
Referenced by LLViewerPartGroup(), and posInGroup().
LLVector3 LLViewerPartGroup::mCenterAgent [protected] |
Definition at line 124 of file llviewerpartsim.h.
Referenced by getCenterAgent(), LLViewerPartGroup(), and shift().
LLVector3 LLViewerPartGroup::mMaxObjPos [protected] |
Definition at line 127 of file llviewerpartsim.h.
Referenced by LLViewerPartGroup(), posInGroup(), and shift().
LLVector3 LLViewerPartGroup::mMinObjPos [protected] |
Definition at line 126 of file llviewerpartsim.h.
Referenced by LLViewerPartGroup(), posInGroup(), and shift().
Definition at line 107 of file llviewerpartsim.h.
Referenced by addPart(), getCount(), LLVOPartGroup::getGeometry(), LLVOPartGroup::getPartSize(), removePart(), removeParticlesByID(), shift(), LLVOPartGroup::updateGeometry(), updateParticles(), and ~LLViewerPartGroup().
LLViewerRegion* LLViewerPartGroup::mRegionp [protected] |
Definition at line 129 of file llviewerpartsim.h.
Referenced by getRegion(), and LLViewerPartGroup().
Definition at line 115 of file llviewerpartsim.h.
Referenced by addPart(), cleanup(), LLViewerPartGroup(), removePart(), and updateParticles().