Table of Contents

Class Instrument

Namespace
ChartTools
Assembly
ChartTools.dll

Base class for instruments

public abstract record Instrument : IEmptyVerifiable, IEquatable<Instrument>
Inheritance
Instrument
Implements
Derived
Inherited Members
Extension Methods

Properties

Easy

Easy track

public Track? Easy { get; }

Property Value

Track

Expert

Expert track

public Track? Expert { get; }

Property Value

Track

Hard

Hard track

public Track? Hard { get; }

Property Value

Track

InstrumentIdentity

Identity of the instrument the object belongs to

public InstrumentIdentity InstrumentIdentity { get; }

Property Value

InstrumentIdentity

InstrumentType

Type of instrument

public InstrumentType InstrumentType { get; }

Property Value

InstrumentType

IsEmpty

true if containing no data

public bool IsEmpty { get; }

Property Value

bool

Medium

Medium track

public Track? Medium { get; }

Property Value

Track

SharedSpecialPhrases

Set of special phrases applied to all difficulties

public List<InstrumentSpecialPhrase> SharedSpecialPhrases { get; set; }

Property Value

List<InstrumentSpecialPhrase>

Methods

CreateTrack(Difficulty)

Creates a track

public abstract Track CreateTrack(Difficulty difficulty)

Parameters

difficulty Difficulty

Difficulty of the track

Returns

Track

GetDifficulty(InstrumentDifficultySet)

Gets the difficulty for an InstrumentIdentity.

public sbyte? GetDifficulty(InstrumentDifficultySet difficulties)

Parameters

difficulties InstrumentDifficultySet

Returns

sbyte?

GetEasy()

protected abstract Track? GetEasy()

Returns

Track

GetExistingTracks()

Creates an array containing all tracks with data.

public virtual IEnumerable<Track> GetExistingTracks()

Returns

IEnumerable<Track>

GetExpert()

protected abstract Track? GetExpert()

Returns

Track

GetHard()

protected abstract Track? GetHard()

Returns

Track

GetIdentity()

protected abstract InstrumentIdentity GetIdentity()

Returns

InstrumentIdentity

GetMedium()

protected abstract Track? GetMedium()

Returns

Track

GetTrack(Difficulty)

Gets the track matching a difficulty.

public abstract Track? GetTrack(Difficulty difficulty)

Parameters

difficulty Difficulty

Returns

Track

GetTracks()

Creates an array containing all tracks.

public virtual Track?[] GetTracks()

Returns

Track[]

RemoveTrack(Difficulty)

Removes a track.

public abstract bool RemoveTrack(Difficulty difficulty)

Parameters

difficulty Difficulty

Difficulty of the target track

Returns

bool

SetDifficulty(InstrumentDifficultySet, sbyte?)

Gets the difficulty for an InstrumentIdentity.

public void SetDifficulty(InstrumentDifficultySet difficulties, sbyte? difficulty)

Parameters

difficulties InstrumentDifficultySet
difficulty sbyte?

ShareLocalEvents(TrackObjectSource)

Gives all tracks the same local events.

public LocalEvent[] ShareLocalEvents(TrackObjectSource source)

Parameters

source TrackObjectSource

Returns

LocalEvent[]

ShareSpecial(TrackObjectSource)

Gives all tracks the same special phrases

public SpecialPhrase[] ShareSpecial(TrackObjectSource source)

Parameters

source TrackObjectSource

Returns

SpecialPhrase[]