Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members Related Pages

# SceneC Class Reference

Composition scene class. More...

`#include <SceneC.h>`

Inheritance diagram for SceneC:

List of all members.

## Public Member Functions
virtual Edit::DataBlockI * | create ()
| Creates new, empty scene.
virtual Edit::DataBlockI * | create (Edit::EditableI *pOriginal)
| Creates new scene (used internally), see Edit::EditableI::create().
virtual void | copy (Edit::EditableI *pEditable)
| Deep copy from a data block, see Edit::DataBlockI::copy().
virtual void | restore (Edit::EditableI *pEditable)
| Shallow copy from a editable, see Edit::EditableI::restore().
void | set_name (const char *szName)
| Sets the name of the scene.
const char * | get_name () const
| Returns the name of the scene.
PajaTypes::uint32 | get_layer_count ()
| Returns number of layers in the scene.
LayerC * | get_layer (PajaTypes::uint32 ui32Index)
| Returns a layer at specified index.
LayerC * | add_layer ()
| Adds new layer to the scene.
void | del_layer (PajaTypes::uint32 ui32Index)
| Deletes a layer at specified index.
void | move_layer_before (PajaTypes::uint32 ui32Index, PajaTypes::uint32 ui32IndexBefore)
| Moves the order of a layer.
PajaTypes::int32 | get_beats_per_min ()
| Returns number of beats per minute (BPM) of the demo.
void | set_beats_per_min (PajaTypes::int32 i32BeatsPerMin)
| Sets number of beats per minute (BPM) of the demo.
PajaTypes::int32 | get_edit_accuracy ()
| Returns the edit accuracy of the demo.
void | set_edit_accuracy (PajaTypes::int32 i32Accuracy)
| Sets the edit accuracy of the demo.
PajaTypes::int32 | get_beats_per_measure ()
| Returns number of beats per measure of the demo.
void | set_beats_per_measure (PajaTypes::int32 i32Beats)
| Sets number of beats per measure of the demo.
PajaTypes::int32 | get_qnotes_per_beat ()
| Returns number of quater-notes per beat.
void | set_qnotes_per_beat (PajaTypes::int32 i32QNotes)
| Sets number of quater-notes per beat.
PajaTypes::int32 | get_music_start_time () const
| Returns the start time of the music.
void | set_music_start_time (PajaTypes::int32 i32Time)
| Sets the start time of the music.
PajaTypes::int32 | get_time () const
| Returns the current time.
void | set_time (PajaTypes::int32 i32Time)
| Sets the current time.
PajaTypes::int32 | get_duration ()
| Returns the duration of the demo.
void | set_duration (PajaTypes::int32 i32Duration)
| Sets the duration of the demo.
PajaTypes::int32 | get_layout_width ()
| Returns the width of the layout in pixels.
void | set_layout_width (PajaTypes::int32 i32Width)
| Sets the width of the layout in pixels.
PajaTypes::int32 | get_layout_height ()
| Returns the height of the layout in pixels.
void | set_layout_height (PajaTypes::int32 i32Height)
| Sets the height of the layout in pixels.
const PajaTypes::ColorC & | get_layout_color () const
| Returns the layout color.
void | set_layout_color (const PajaTypes::ColorC &rCol)
| Sets the layout color.
PajaTypes::uint32 | get_marker_count () const
| Returns the number of markers.
PajaTypes::int32 | get_marker_time (PajaTypes::uint32 ui32Index) const
| Returns the time of the specified marker.
const char * | get_marker_name (PajaTypes::uint32 ui32Index) const
| Returns the name of the specified marker.
void | set_marker_time (PajaTypes::uint32 ui32Index, PajaTypes::int32 i32Time)
| Sets the time of the specified marker.
void | set_marker_name (PajaTypes::uint32 ui32Index, const char *szName)
| Sets the name of the specified marker.
void | add_marker (PajaTypes::int32 i32Time, const char *szName)
| Adds new marker at specified time.
void | del_marker (PajaTypes::uint32 ui32Index)
| Removes the specified marker.
void | sort_markers ()
| Sorts markers (time).
void | initialize (PajaTypes::uint32 ui32Reason, PajaSystem::DeviceContextC *pContext, PajaSystem::TimeContextC *pTimeContext)
| Relays the initialise for all effects in a scene.
PajaTypes::uint32 | save (FileIO::SaveC *pSave)
| Serialize the key to a Demopaja output stream.
PajaTypes::uint32 | load (FileIO::LoadC *pLoad)
| Serialize the key from a Demopaja input stream.
PajaTypes::uint32 | load (FileIO::LoadC *pLoad, bool bMerge)
| Serialize the key from a Demopaja input stream with merge to old scnene.
## Static Public Member Functions
SceneC * | create_new ()
| Creates new, empty scene.
## Protected Member Functions
| SceneC ()
| Default constructor.
| SceneC (Edit::EditableI *pOriginal)
| Constructor with reference to the original.
virtual | ~SceneC ()
| Default destructor.

## Detailed Description

Composition scene class.

The base of the demo in Demopaja is scene. The layers are store inside the scene. Scene also contains information about the size of the canvas where the demo is shown and the speed of the demo.

The changes made to the scene is saved to a undo object if present.

This class is implemented by the system.

## Constructor & Destructor Documentation

SceneC | ( |  | ) | `[protected]`

| Default constructor.

SceneC | ( | Edit::EditableI * | pOriginal | ) | `[protected]`

| Constructor with reference to the original.

virtual ~SceneC | ( |  | ) | `[protected, virtual]`

| Default destructor.

## Member Function Documentation

LayerC* add_layer | ( |  | ) |

| Adds new layer to the scene.

void add_marker | ( | PajaTypes::int32 | i32Time,
|  | const char * | szName
| ) |

| Adds new marker at specified time.

virtual void copy | ( | Edit::EditableI * | pEditable | ) | `[virtual]`

| Deep copy from a data block, see Edit::DataBlockI::copy(). Implements EditableI.

virtual Edit::DataBlockI* create | ( | Edit::EditableI * | pOriginal | ) | `[virtual]`

| Creates new scene (used internally), see Edit::EditableI::create(). Implements EditableI.

virtual Edit::DataBlockI* create | ( |  | ) | `[virtual]`

| Creates new, empty scene. Implements EditableI.

SceneC* create_new | ( |  | ) | `[static]`

| Creates new, empty scene.

void del_layer | ( | PajaTypes::uint32 | ui32Index | ) |

| Deletes a layer at specified index.

void del_marker | ( | PajaTypes::uint32 | ui32Index | ) |

| Removes the specified marker.

PajaTypes::int32 get_beats_per_measure | ( |  | ) |

| Returns number of beats per measure of the demo.

PajaTypes::int32 get_beats_per_min | ( |  | ) |

| Returns number of beats per minute (BPM) of the demo.

PajaTypes::int32 get_duration | ( |  | ) |

| Returns the duration of the demo. The return value is number of quater-notes multiplied by 256.

PajaTypes::int32 get_edit_accuracy | ( |  | ) |

| Returns the edit accuracy of the demo.

LayerC* get_layer | ( | PajaTypes::uint32 | ui32Index | ) |

| Returns a layer at specified index.

PajaTypes::uint32 get_layer_count | ( |  | ) |

| Returns number of layers in the scene.

const PajaTypes::ColorC& get_layout_color | ( |  | ) | const

| Returns the layout color.

PajaTypes::int32 get_layout_height | ( |  | ) |

| Returns the height of the layout in pixels.

PajaTypes::int32 get_layout_width | ( |  | ) |

| Returns the width of the layout in pixels.

PajaTypes::uint32 get_marker_count | ( |  | ) | const

| Returns the number of markers.

const char* get_marker_name | ( | PajaTypes::uint32 | ui32Index | ) | const

| Returns the name of the specified marker.

PajaTypes::int32 get_marker_time | ( | PajaTypes::uint32 | ui32Index | ) | const

| Returns the time of the specified marker.

PajaTypes::int32 get_music_start_time | ( |  | ) | const

| Returns the start time of the music.

const char* get_name | ( |  | ) | const

| Returns the name of the scene.

PajaTypes::int32 get_qnotes_per_beat | ( |  | ) |

| Returns number of quater-notes per beat.

PajaTypes::int32 get_time | ( |  | ) | const

| Returns the current time.

void initialize | ( | PajaTypes::uint32 | ui32Reason,
|  | PajaSystem::DeviceContextC * | pContext,
|  | PajaSystem::TimeContextC * | pTimeContext
| ) |

| Relays the initialise for all effects in a scene.

PajaTypes::uint32 load | ( | FileIO::LoadC * | pLoad,
|  | bool | bMerge
| ) |

| Serialize the key from a Demopaja input stream with merge to old scnene.

PajaTypes::uint32 load | ( | FileIO::LoadC * | pLoad | ) | `[virtual]`

| Serialize the key from a Demopaja input stream. Implements EditableI.

void move_layer_before | ( | PajaTypes::uint32 | ui32Index,
|  | PajaTypes::uint32 | ui32IndexBefore
| ) |

  | Moves the order of a layer. Parameters:
  ui32Index | the index of the layer to move.
  ui32IndexBefore | the index of the layer before the layer is moved. Moves the layer before another layer.

virtual void restore | ( | Edit::EditableI * | pEditable | ) | `[virtual]`

| Shallow copy from a editable, see Edit::EditableI::restore(). Implements EditableI.

PajaTypes::uint32 save | ( | FileIO::SaveC * | pSave | ) | `[virtual]`

| Serialize the key to a Demopaja output stream. Implements EditableI.

void set_beats_per_measure | ( | PajaTypes::int32 | i32Beats | ) |

| Sets number of beats per measure of the demo.

void set_beats_per_min | ( | PajaTypes::int32 | i32BeatsPerMin | ) |

| Sets number of beats per minute (BPM) of the demo.

void set_duration | ( | PajaTypes::int32 | i32Duration | ) |

| Sets the duration of the demo.

void set_edit_accuracy | ( | PajaTypes::int32 | i32Accuracy | ) |

| Sets the edit accuracy of the demo.

void set_layout_color | ( | const PajaTypes::ColorC & | rCol | ) |

| Sets the layout color.

void set_layout_height | ( | PajaTypes::int32 | i32Height | ) |

| Sets the height of the layout in pixels.

void set_layout_width | ( | PajaTypes::int32 | i32Width | ) |

| Sets the width of the layout in pixels.

void set_marker_name | ( | PajaTypes::uint32 | ui32Index,
|  | const char * | szName
| ) |

| Sets the name of the specified marker.

void set_marker_time | ( | PajaTypes::uint32 | ui32Index,
|  | PajaTypes::int32 | i32Time
| ) |

| Sets the time of the specified marker.

void set_music_start_time | ( | PajaTypes::int32 | i32Time | ) |

| Sets the start time of the music.

void set_name | ( | const char * | szName | ) |

| Sets the name of the scene.

void set_qnotes_per_beat | ( | PajaTypes::int32 | i32QNotes | ) |

| Sets number of quater-notes per beat.

void set_time | ( | PajaTypes::int32 | i32Time | ) |

| Sets the current time.

void sort_markers | ( |  | ) |

| Sorts markers (time).