Public Types | |
enum | LoopMode { LOOP, SWING } |
enum | SequenceMode { START, STOP, PAUSE, RESUME } |
Public Member Functions | |
Sequence () | |
Sequence (const Sequence &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
META_Node (osg, Sequence) | |
virtual void | traverse (NodeVisitor &nv) |
virtual bool | addChild (Node *child) |
virtual bool | addChild (Node *child, double t) |
virtual bool | insertChild (unsigned int index, Node *child) |
virtual bool | insertChild (unsigned int index, Node *child, double t) |
virtual bool | removeChild (Node *child) |
virtual bool | removeChildren (unsigned int pos, unsigned int numChildrenToRemove) |
void | setValue (int value) |
int | getValue () const |
void | setTime (unsigned int frame, double t) |
double | getTime (unsigned int frame) const |
void | setTimeList (const std::vector< double > &timeList) |
const std::vector< double > & | getTimeList () const |
void | setDefaultTime (double t) |
double | getDefaultTime (void) const |
void | setLastFrameTime (double t) |
double | getLastFrameTime (void) const |
unsigned int | getNumFrames () const |
void | setLoopMode (LoopMode mode) |
LoopMode | getLoopMode () const |
void | setBegin (int begin) |
int | getBegin () const |
void | setEnd (int end) |
int | getEnd () const |
void | setInterval (LoopMode mode, int begin, int end) |
void | getInterval (LoopMode &mode, int &begin, int &end) const |
void | setSpeed (float speed) |
float | getSpeed () const |
void | setNumRepeats (int nreps) |
int | getNumRepeats () const |
void | setDuration (float speed, int nreps=-1) |
void | getDuration (float &speed, int &nreps) const |
void | setMode (SequenceMode mode) |
SequenceMode | getMode () const |
void | setSync (bool sync) |
bool | getSync () const |
void | setClearOnStop (bool clearOnStop) |
bool | getClearOnStop () const |
Protected Member Functions | |
virtual | ~Sequence () |
int | _getNextValue (void) |
void | _update (void) |
Protected Attributes | |
int | _value |
double | _now |
double | _start |
std::vector< double > | _frameTime |
double | _totalTime |
bool | _resetTotalTime |
LoopMode | _loopMode |
int | _begin |
int | _end |
float | _speed |
int | _nreps |
int | _nrepsRemain |
int | _step |
double | _defaultTime |
double | _lastFrameTime |
double | _saveRealLastFrameTime |
unsigned int | _saveRealLastFrameValue |
SequenceMode | _mode |
bool | _sync |
bool | _clearOnStop |
Sequence modes.
osg::Sequence::Sequence | ( | ) |
Copy constructor using CopyOp to manage deep vs shallow copy.
virtual osg::Sequence::~Sequence | ( | ) | [inline, protected, virtual] |
osg::Sequence::META_Node | ( | osg | , | |
Sequence | ||||
) |
virtual void osg::Sequence::traverse | ( | NodeVisitor & | ) | [virtual] |
Traverse downwards : calls children's accept method with NodeVisitor.
Reimplemented from osg::Group.
virtual bool osg::Sequence::addChild | ( | Node * | child | ) | [virtual] |
Add Node to Group. If node is not NULL and is not contained in Group then increment its reference count, add it to the child list and dirty the bounding sphere to force it to recompute on next getBound() and return true for success. Otherwise return false. Scene nodes can't be added as child nodes.
Reimplemented from osg::Group.
virtual bool osg::Sequence::addChild | ( | Node * | child, | |
double | t | |||
) | [virtual] |
virtual bool osg::Sequence::insertChild | ( | unsigned int | index, | |
Node * | child | |||
) | [virtual] |
Insert Node to Group at specific location. The new child node is inserted into the child list before the node at the specified index. No nodes are removed from the group with this operation.
Reimplemented from osg::Group.
virtual bool osg::Sequence::insertChild | ( | unsigned int | index, | |
Node * | child, | |||
double | t | |||
) | [virtual] |
virtual bool osg::Sequence::removeChild | ( | Node * | child | ) | [virtual] |
Remove Node from Group. If Node is contained in Group then remove it from the child list, decrement its reference count, and dirty the bounding sphere to force it to recompute on next getBound() and return true for success. If Node is not found then return false and do not change the reference count of the Node. Note, do not override, only override removeChildren(,) is required.
Reimplemented from osg::Group.
virtual bool osg::Sequence::removeChildren | ( | unsigned int | pos, | |
unsigned int | numChildrenToRemove | |||
) | [virtual] |
Remove children from Group. Note, must be override by subclasses of Group which add per child attributes.
Reimplemented from osg::Group.
void osg::Sequence::setValue | ( | int | value | ) | [inline] |
value is which child node is to be displayed
int osg::Sequence::getValue | ( | ) | const [inline] |
void osg::Sequence::setTime | ( | unsigned int | frame, | |
double | t | |||
) |
Set time in seconds for child.
double osg::Sequence::getTime | ( | unsigned int | frame | ) | const |
Get time for child.
void osg::Sequence::setTimeList | ( | const std::vector< double > & | timeList | ) | [inline] |
Set the time list for children.
const std::vector<double>& osg::Sequence::getTimeList | ( | ) | const [inline] |
Get the time list for children.
void osg::Sequence::setDefaultTime | ( | double | t | ) | [inline] |
Set default time in seconds for new child. if t<0, t=0
double osg::Sequence::getDefaultTime | ( | void | ) | const [inline] |
Get default time in seconds for new child.
void osg::Sequence::setLastFrameTime | ( | double | t | ) | [inline] |
Set time of last frame of last loop, in seconds. if t<= 0, then ignored
double osg::Sequence::getLastFrameTime | ( | void | ) | const [inline] |
Get last frame time in seconds
unsigned int osg::Sequence::getNumFrames | ( | ) | const [inline] |
Get number of frames
void osg::Sequence::setLoopMode | ( | LoopMode | mode | ) | [inline] |
Set sequence mode.
LoopMode osg::Sequence::getLoopMode | ( | ) | const [inline] |
Get sequence mode.
void osg::Sequence::setBegin | ( | int | begin | ) | [inline] |
Set interval beginning.
int osg::Sequence::getBegin | ( | ) | const [inline] |
Get interval beginning.
void osg::Sequence::setEnd | ( | int | end | ) | [inline] |
Set interval ending.
int osg::Sequence::getEnd | ( | ) | const [inline] |
Get interval ending.
void osg::Sequence::setInterval | ( | LoopMode | mode, | |
int | begin, | |||
int | end | |||
) |
Set sequence mode & interval (range of children to be displayed).
void osg::Sequence::getInterval | ( | LoopMode & | mode, | |
int & | begin, | |||
int & | end | |||
) | const [inline] |
Get sequence mode & interval.
void osg::Sequence::setSpeed | ( | float | speed | ) | [inline] |
Set speed.
float osg::Sequence::getSpeed | ( | ) | const [inline] |
Get speed.
void osg::Sequence::setNumRepeats | ( | int | nreps | ) | [inline] |
Set number of repeats.
int osg::Sequence::getNumRepeats | ( | ) | const [inline] |
Get number of repeats.
void osg::Sequence::setDuration | ( | float | speed, | |
int | nreps = -1 | |||
) |
Set duration: speed-up & number of repeats
void osg::Sequence::getDuration | ( | float & | speed, | |
int & | nreps | |||
) | const [inline] |
Get duration & number of repeats.
void osg::Sequence::setMode | ( | SequenceMode | mode | ) |
Set sequence mode. Start/stop & pause/resume.
SequenceMode osg::Sequence::getMode | ( | ) | const [inline] |
Get sequence mode.
void osg::Sequence::setSync | ( | bool | sync | ) | [inline] |
If false (default), frames will not be sync'd to frameTime. If true, frames will be sync'd to frameTime.
bool osg::Sequence::getSync | ( | ) | const [inline] |
Get sync value
void osg::Sequence::setClearOnStop | ( | bool | clearOnStop | ) | [inline] |
If true, show no child nodes after stopping
bool osg::Sequence::getClearOnStop | ( | ) | const [inline] |
Get whether to show no child nodes after stopping
int osg::Sequence::_getNextValue | ( | void | ) | [protected] |
void osg::Sequence::_update | ( | void | ) | [protected] |
int osg::Sequence::_value [protected] |
double osg::Sequence::_now [protected] |
double osg::Sequence::_start [protected] |
std::vector<double> osg::Sequence::_frameTime [protected] |
double osg::Sequence::_totalTime [protected] |
bool osg::Sequence::_resetTotalTime [protected] |
LoopMode osg::Sequence::_loopMode [protected] |
int osg::Sequence::_begin [protected] |
int osg::Sequence::_end [protected] |
float osg::Sequence::_speed [protected] |
int osg::Sequence::_nreps [protected] |
int osg::Sequence::_nrepsRemain [protected] |
int osg::Sequence::_step [protected] |
double osg::Sequence::_defaultTime [protected] |
double osg::Sequence::_lastFrameTime [protected] |
double osg::Sequence::_saveRealLastFrameTime [protected] |
unsigned int osg::Sequence::_saveRealLastFrameValue [protected] |
SequenceMode osg::Sequence::_mode [protected] |
bool osg::Sequence::_sync [protected] |
bool osg::Sequence::_clearOnStop [protected] |