Etterna 0.75.1
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Replay Class Reference

Public Member Functions

 Replay (const HighScore *hs)
 
 Replay (std::string chartKey, float musicRate, float songOffset, float globalOffset, int rngSeed)
 
const std::string GetBasicPath () const
 
const std::string GetFullPath () const
 
const std::string GetInputPath () const
 
const std::string GetOnlinePath () const
 
const std::vector< float > & GetOffsetVector () const
 
std::vector< float > GetCopyOfOffsetVector () const
 
void SetOffsetVector (const std::vector< float > &v)
 
const std::vector< int > & GetNoteRowVector () const
 
std::vector< int > GetCopyOfNoteRowVector () const
 
void SetNoteRowVector (const std::vector< int > &v)
 
const std::vector< int > & GetTrackVector () const
 
std::vector< int > GetCopyOfTrackVector () const
 
void SetTrackVector (const std::vector< int > &v)
 
const std::vector< TapNoteType > & GetTapNoteTypeVector () const
 
std::vector< TapNoteType > GetCopyOfTapNoteTypeVector () const
 
void SetTapNoteTypeVector (const std::vector< TapNoteType > &v)
 
const std::vector< HoldReplayResult > & GetHoldReplayDataVector () const
 
std::vector< HoldReplayResult > GetCopyOfHoldReplayDataVector () const
 
void SetHoldReplayDataVector (const std::vector< HoldReplayResult > &v)
 
const std::vector< MineReplayResult > & GetMineReplayDataVector () const
 
std::vector< MineReplayResult > GetCopyOfMineReplayDataVector () const
 
void SetMineReplayDataVector (const std::vector< MineReplayResult > &v)
 
const std::vector< float > & GetOnlineReplayTimestampVector () const
 
std::vector< float > GetCopyOfOnlineReplayTimestampVector () const
 
void SetOnlineReplayTimestampVector (const std::vector< float > &v)
 
const std::vector< InputDataEvent > & GetInputDataVector () const
 
std::vector< InputDataEvent > GetCopyOfInputDataVector () const
 
void SetInputDataVector (const std::vector< InputDataEvent > &v)
 
const std::vector< MissReplayResult > & GetMissReplayDataVector () const
 
std::vector< MissReplayResult > GetCopyOfMissReplayDataVector () const
 
void SetMissReplayDataVector (const std::vector< MissReplayResult > &v)
 
const std::map< int, ReplaySnapshot > & GetReplaySnapshotMap () const
 
std::map< int, ReplaySnapshot > GetCopyOfReplaySnapshotMap () const
 
void SetReplaySnapshotMap (const std::map< int, ReplaySnapshot > &m)
 
JudgeInfo & GetJudgeInfo ()
 
JudgeInfo GetCopyOfJudgeInfo () const
 
void SetJudgeInfo (const JudgeInfo &ji)
 
std::string GetScoreKey () const
 
void SetScoreKey (std::string &key)
 
std::string GetChartKey () const
 
void SetChartKey (std::string &key)
 
float GetMusicRate () const
 
void SetMusicRate (float f)
 
float GetSongOffset () const
 
void SetSongOffset (float f)
 
float GetGlobalOffset () const
 
void SetGlobalOffset (float f)
 
int GetRngSeed () const
 
void SetRngSeed (int seed)
 
std::string GetModifiers () const
 
void SetModifiers (std::string &modstr)
 
void SetUseReprioritizedNoteRows (bool b)
 
bool UsingReprioritizedNoteRows ()
 
const std::vector< MissReplayResult > & GetReprioritizedMissData () const
 
std::vector< MissReplayResult > GetCopyOfReprioritizedMissData () const
 
void SetReprioritizedMissData (const std::vector< MissReplayResult > &v)
 
const std::vector< HoldReplayResult > & GetReprioritizedHoldData () const
 
std::vector< HoldReplayResult > GetCopyOfReprioritizedHoldData () const
 
void SetReprioritizedHoldData (const std::vector< HoldReplayResult > &v)
 
const std::vector< MineReplayResult > & GetReprioritizedMineData () const
 
std::vector< MineReplayResult > GetCopyOfReprioritizedMineData () const
 
void SetReprioritizedMineData (const std::vector< MineReplayResult > &v)
 
const std::vector< MissReplayResult > & GetRelevantMissData () const
 
const std::vector< HoldReplayResult > & GetRelevantHoldData () const
 
const std::vector< MineReplayResult > & GetRelevantMineData () const
 
void IngestInputData (bool ispress, int col, int row, float musicsecs, float offset, TapNoteType tnt, TapNoteSubType tnst)
 
void IngestHoldDrop (int col, int row, TapNoteSubType tnst)
 
void IngestMineHit (int col, int row)
 
void IngestMissData (int col, int row, TapNoteType tnt, TapNoteSubType tnst)
 
void IngestV2Data (int col, int row, float offset, TapNoteType tnt)
 
ReplayType GetReplayType () const
 
bool HasColumnData () const
 true for V2 and InputData
 
bool WriteReplayData ()
 
bool WriteInputData ()
 
bool LoadReplayData ()
 
bool HasReplayData () const
 
bool HasWrittenReplayData () const
 
bool FillInBlanksForInputData ()
 
bool GeneratePrimitiveVectors ()
 
bool GenerateNoterowsFromTimestamps ()
 Generate Noterow vector using online timestamp replay format.
 
bool GenerateInputData ()
 Generate InputData using any ReplayData.
 
bool ReprioritizeInputData ()
 
std::map< int, std::vector< PlaybackEvent > > GeneratePlaybackEvents (int startRow=0)
 Generate events used for playing back replay in gameplay.
 
std::map< int, std::vector< PlaybackEvent > > GeneratePlaybackEventForInputDataHead ()
 Generate an event for replay playback for only one InputData element.
 
bool GenerateJudgeInfoAndReplaySnapshots (int startingRow=0, float timingScale=1.F)
 For Stats and ReplaySnapshots.
 
std::map< int, std::set< int > > GenerateDroppedHoldColumnsToRowsMap (int startRow=0)
 
std::map< int, std::set< int > > GenerateDroppedHoldRowsToColumnsMap (int startRow=0)
 
std::map< int, std::set< int > > GenerateDroppedHoldColumnsToRowsMapFromHead ()
 Generate the event required for spectator playback.
 
void ValidateOffsets ()
 Offsets can be really weird - Remove all impossible offsets.
 
bool ValidateInputDataNoterows ()
 
void VerifyInputDataAndReplayData ()
 
void VerifyGeneratedInputDataMatchesReplayData ()
 
HighScore * GetHighScore () const
 
Steps * GetSteps () const
 
NoteData GetNoteData (Steps *pSteps=nullptr, bool bTransform=true)
 
TimingData * GetTimingData () const
 
const Style * GetStyle () const
 
std::shared_ptr< ReplaySnapshot > GetReplaySnapshotForNoterow (int row)
 
bool CanSafelyTransformNoteData ()
 A check to see if the Replay has an RNG seed, if it uses shuffle.
 
bool IsOnlineScore () const
 
bool IsSpectateScore () const
 
void Unload ()
 
void SetHighScoreMods ()
 
void PushSelf (lua_State *L)
 Lua.
 

Member Function Documentation

◆ FillInBlanksForInputData()

bool Replay::FillInBlanksForInputData ( )

Corrects missing fields for InputData. Will only work for InputData backed by loaded NoteData

◆ GenerateDroppedHoldColumnsToRowsMap()

std::map< int, std::set< int > > Replay::GenerateDroppedHoldColumnsToRowsMap ( int  startRow = 0)

Returns map of columns to a set of rows which are dropped See which columns have drops using this

◆ GenerateDroppedHoldRowsToColumnsMap()

std::map< int, std::set< int > > Replay::GenerateDroppedHoldRowsToColumnsMap ( int  startRow = 0)

Returns a map of rows to a set of columns which are dropped See which rows have drops using this

◆ GeneratePrimitiveVectors()

bool Replay::GeneratePrimitiveVectors ( )

Generate ReplayV2 Data from InputData. The main use of this is for rescoring the classic way

◆ ReprioritizeInputData()

bool Replay::ReprioritizeInputData ( )

Used for recalculating notedata nearest noterows. Uses a different algorithm than "closest note" to rejudge the data.

◆ SetHighScoreMods()

void Replay::SetHighScoreMods ( )

Setting the mod string is handled separately. Use this to set mods, as long as a scorekey is given.

◆ ValidateInputDataNoterows()

bool Replay::ValidateInputDataNoterows ( )

Noterows for Replay/Input Data can just ... shift... This is only a bit uncommon. It can happen if you simply shift an entire chart forward or backwards in noterows only. So this function tries to correct data by shifting it to match the existing notedata. If this function returns false, reloading InputData is recommended.

◆ VerifyGeneratedInputDataMatchesReplayData()

void Replay::VerifyGeneratedInputDataMatchesReplayData ( )

Used to validate that converting replay data to input data produces correct and equal output vs replay data alone. This is not meant to ever be used outside of debug.

◆ VerifyInputDataAndReplayData()

void Replay::VerifyInputDataAndReplayData ( )

Used to validate that converting input data to replay data produces correct and equal output vs replay data alone. This is not meant to ever be used outside of debug.

◆ WriteInputData()

bool Replay::WriteInputData ( )

compression


The documentation for this class was generated from the following files: