Class TRepoSoundEngine.TSoundInfo

Description
Hierarchy
Enclosing Class
Fields
Methods
Properties

Unit

Declaration

type TSoundInfo = class(TObject)

Description

Sound that can be played – actual sound with buffer, or an alias to it.

Hierarchy

Enclosing Class

Overview

Fields

Strict Private FOwningSoundEngine: TSoundEngine;
Public Name: String;
Public ShortName: String;
Public ParentGroup: TSoundGroup;

Methods

Public procedure ReadElement(const Element: TDOMElement; const AParentGroup: TSoundGroup; const BaseUrl: String; const ASoundEngine: TRepoSoundEngine); virtual;
Public procedure ResolveNames(const AllSounds: TSoundInfoList); virtual;
Public function FinalSound(const RecursionDepth: Cardinal): TSoundInfoBuffer; virtual; abstract;

Properties

Strict Protected property OwningSoundEngine: TSoundEngine read FOwningSoundEngine;

Description

Fields

Strict Private FOwningSoundEngine: TSoundEngine;

Although we only support one instance of TSoundEngine, in SoundEngine, but it seems more future-proof to store in TSoundInfo own reference to TSoundEngine. Automatically assigned in ReadElement.

Public Name: String;

Unique sound name (including parent group names). Empty for the special sound stNone = nil.

Public ShortName: String;

Like Name, but without parent group names. Unique within the ParentGroup (not necessarily unique among all sounds).

Public ParentGroup: TSoundGroup;

A group (one among FSoundGroups, or Nil if not in any group).

Methods

Public procedure ReadElement(const Element: TDOMElement; const AParentGroup: TSoundGroup; const BaseUrl: String; const ASoundEngine: TRepoSoundEngine); virtual;

Read a sound from XML element <sound> or <alias>.

Public procedure ResolveNames(const AllSounds: TSoundInfoList); virtual;

Do some finalization once all sounds are known, and their names are known.

Public function FinalSound(const RecursionDepth: Cardinal): TSoundInfoBuffer; virtual; abstract;

Get the final TSoundInfoBuffer, resolving aliases.

Properties

Strict Protected property OwningSoundEngine: TSoundEngine read FOwningSoundEngine;

This item has no description.