Crystal Space: iEngineSequenceManager Struct Reference (Crystal Space Public API Reference)

| ## Public API Reference

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

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

# iEngineSequenceManager Struct Reference

Sequence manager specifically designed for working on the engine. More...

`#include <ivaria/engseq.h>`

Inheritance diagram for iEngineSequenceManager:

[legend]
List of all members.

## Public Member Functions
virtual csPtr< iParameterESM > | CreateParameterESM (iBase *value)=0
| Create a parameter ESM for a constant value.
virtual csPtr< iSequenceWrapper > | CreateSequence (const char *name)=0
| Create a new sequence with a given name.
virtual csPtr< iSequenceTrigger > | CreateTrigger (const char *name)=0
| Create a new trigger with a given name.
virtual void | DestroyTimedOperations (uint sequence_id)=0
| Destroy all timed operations with a given sequence id.
virtual iSequenceWrapper * | FindSequenceByName (const char *name) const =0
| Get a sequence by name.
virtual iSequenceTrigger * | FindTriggerByName (const char *name) const =0
| Get a trigger by name.
virtual void | FireTimedOperation (csTicks delta, csTicks duration, iSequenceTimedOperation *op, iBase *params=0, uint sequence_id=0)=0
| Start a timed operation with a given delta (in ticks).
virtual bool | FireTriggerByName (const char *name, bool now=false) const =0
| Fire a trigger manually, specifying the name.
virtual iSequenceWrapper * | GetSequence (size_t idx) const =0
| Get a sequence.
virtual size_t | GetSequenceCount () const =0
| Get the number of sequences.
virtual iSequenceManager * | GetSequenceManager ()=0
| Get a pointer to the underlying sequence manager that is being used.
virtual iSequenceTrigger * | GetTrigger (size_t idx) const =0
| Get a trigger.
virtual size_t | GetTriggerCount () const =0
| Get the number of triggers.
virtual void | RemoveSequence (iSequenceWrapper *seq)=0
| Remove sequence from the manager.
virtual void | RemoveSequences ()=0
| Remove all sequences.
virtual void | RemoveTrigger (iSequenceTrigger *trigger)=0
| Remove trigger from the manager.
virtual void | RemoveTriggers ()=0
| Remove all triggers.
virtual bool | RunSequenceByName (const char *name, int delay) const =0
| Run a sequence and don't mess around with triggers.

## Detailed Description

Sequence manager specifically designed for working on the engine.

Main creators of instances implementing this interface:

- Engine Sequence Manager plugin (crystalspace.utilities.sequence.engine)

Main ways to get pointers to this interface:

- CS_QUERY_REGISTRY()

Definition at line 693 of file engseq.h.

## Member Function Documentation

virtual csPtr<iParameterESM> iEngineSequenceManager::CreateParameterESM | ( | iBase * | value | ) | `[pure virtual]`

Create a parameter ESM for a constant value.

virtual csPtr<iSequenceWrapper> iEngineSequenceManager::CreateSequence | ( | const char * | name | ) | `[pure virtual]`

Create a new sequence with a given name.

virtual csPtr<iSequenceTrigger> iEngineSequenceManager::CreateTrigger | ( | const char * | name | ) | `[pure virtual]`

Create a new trigger with a given name.

virtual void iEngineSequenceManager::DestroyTimedOperations | ( | uint | sequence_id | ) | `[pure virtual]`

Destroy all timed operations with a given sequence id.

virtual iSequenceWrapper* iEngineSequenceManager::FindSequenceByName | ( | const char * | name | ) | const`[pure virtual]`

Get a sequence by name.

virtual iSequenceTrigger* iEngineSequenceManager::FindTriggerByName | ( | const char * | name | ) | const`[pure virtual]`

Get a trigger by name.

virtual void iEngineSequenceManager::FireTimedOperation | ( | csTicks | delta,
|  | csTicks | duration,
|  | iSequenceTimedOperation * | op,
|  | iBase * | params = `0`,
|  | uint | sequence_id = `0` |
| ) |  |  | `[pure virtual]`

Start a timed operation with a given delta (in ticks).

The delta has to be interpreted as the amount of time that has already elapsed since the beginning of the timed operation. The params block is increffed for as long as is needed so you can release your reference.

Parameters:

  | sequence_id | This identifier can be used to get track of a given sequence. You can use this id to remove all operations that have this id. Use iSequenceManager->GetUniqueID() to fetch a suitable id here or else use the same id as the sequence has.

virtual bool iEngineSequenceManager::FireTriggerByName | ( | const char * | name,
|  | bool | now = `false` |
| ) |  |  | const`[pure virtual]`

Fire a trigger manually, specifying the name.

This will call ForceFire() on the trigger (if one is found). If now == false then the usual delay will be respected. Otherwise the sequence will be run immediatelly without the default delay.

virtual iSequenceWrapper* iEngineSequenceManager::GetSequence | ( | size_t | idx | ) | const`[pure virtual]`

Get a sequence.

virtual size_t iEngineSequenceManager::GetSequenceCount | ( |  | ) | const`[pure virtual]`

Get the number of sequences.

virtual iSequenceManager* iEngineSequenceManager::GetSequenceManager | ( |  | ) | `[pure virtual]`

Get a pointer to the underlying sequence manager that is being used.

virtual iSequenceTrigger* iEngineSequenceManager::GetTrigger | ( | size_t | idx | ) | const`[pure virtual]`

Get a trigger.

virtual size_t iEngineSequenceManager::GetTriggerCount | ( |  | ) | const`[pure virtual]`

Get the number of triggers.

virtual void iEngineSequenceManager::RemoveSequence | ( | iSequenceWrapper * | seq | ) | `[pure virtual]`

Remove sequence from the manager.

virtual void iEngineSequenceManager::RemoveSequences | ( |  | ) | `[pure virtual]`

Remove all sequences.

virtual void iEngineSequenceManager::RemoveTrigger | ( | iSequenceTrigger * | trigger | ) | `[pure virtual]`

Remove trigger from the manager.

virtual void iEngineSequenceManager::RemoveTriggers | ( |  | ) | `[pure virtual]`

Remove all triggers.

virtual bool iEngineSequenceManager::RunSequenceByName | ( | const char * | name,
|  | int | delay |
| ) |  |  | const`[pure virtual]`

Run a sequence and don't mess around with triggers.

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

- ivaria/engseq.h