| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iEmitMix Struct Reference

Mix value emitter - returns a weighted random mix of other emitters. More...

`#include <imesh/emit.h>`

Inheritance diagram for iEmitMix:

[legend]
List of all members.

## Public Member Functions
virtual void | AddEmitter (float weight, iEmitGen3D *emit)=0
| add a weighted emitter to the mix
virtual void | AdjustEmitterWeight (int num, float weight)=0
| Adjust the weight of an emitter given a zero based emitter number Use GetEmitterCount() and GetContent() to enumerate through the mix and find the index of an emitter.
virtual void | GetContent (int num, float &weight, iEmitGen3D *&emit)=0
| get content, returns emitters and their weight by a number (0..number-1)
virtual int | GetEmitterCount ()=0
| get the number of emitters in this mix
virtual float | GetTotalWeight ()=0
| get the total weight in this mix
virtual void | RemoveEmitter (int num)=0
| Removes an emitter from the mix given a zero based emitter number.

## Detailed Description

Mix value emitter - returns a weighted random mix of other emitters.

Main creators of instances implementing this interface:

- iEmitFactoryState::CreateMix()

Main users of this interface:

- iEmitState

Definition at line 135 of file emit.h.

## Member Function Documentation

virtual void iEmitMix::AddEmitter | ( | float | weight,
|  | iEmitGen3D * | emit |
| ) |  |  | `[pure virtual]`

add a weighted emitter to the mix

virtual void iEmitMix::AdjustEmitterWeight | ( | int | num,
|  | float | weight |
| ) |  |  | `[pure virtual]`

Adjust the weight of an emitter given a zero based emitter number Use GetEmitterCount() and GetContent() to enumerate through the mix and find the index of an emitter.

virtual void iEmitMix::GetContent | ( | int | num,
|  | float & | weight,
|  | iEmitGen3D *& | emit |
| ) |  |  | `[pure virtual]`

get content, returns emitters and their weight by a number (0..number-1)

virtual int iEmitMix::GetEmitterCount | ( |  | ) | `[pure virtual]`

get the number of emitters in this mix

virtual float iEmitMix::GetTotalWeight | ( |  | ) | `[pure virtual]`

get the total weight in this mix

virtual void iEmitMix::RemoveEmitter | ( | int | num | ) | `[pure virtual]`

Removes an emitter from the mix given a zero based emitter number.

Use GetEmitterCount() and GetContent() to enumerate through the mix and find the index of an emitter.

The documentation for this struct was generated from the following file:

- imesh/emit.h