// CFTTMusicPlayer - [2020-04-13 11:57:46]
#ifndef _CFTTMUSICPLAYER_H_
#define _CFTTMUSICPLAYER_H_

#include "common.h"
#include <SLES/OpenSLES.h>
/*

001FADE8 CFTTMusicPlayer::GetUserMusicPlaying()
001FADF8 CFTTMusicPlayer::SetUserMusicPlaying(bool)
001FAE08 CFTTMusicPlayer::Create(char const*)
001FAE74 CFTTMusicPlayer::CFTTMusicPlayer()
001FAE8E CFTTMusicPlayer::~CFTTMusicPlayer()
001FAE9A CFTTMusicPlayer::GetState()
001FBDAC CFTTMusicPlayer::UpdateUserMusicPlaying()
001FC3F0 CFTTMusicPlayer::OpenAudioFile(char const*)
001FC564 CFTTMusicPlayer::FreeNative()
001FC63C CFTTMusicPlayer::Play()
001FC678 CFTTMusicPlayer::Pause()
001FC6B4 CFTTMusicPlayer::Stop(bool)
001FC6F0 CFTTMusicPlayer::SetVolume(float)

*/

class TFTTAudio_MusicPlayerNative {
public:
  void SafeDestroy();  // 001FC598

  SLObjectItf field_0;
  SLPlayItf playObj_4;
  SLSeekItf seekObj_8;
  SLVolumeItf volumeObj_C;
  bool field_10;
  char field_11;
  char field_12;
  char field_13;
};

class CFTTMusicPlayer {
public:
  CFTTMusicPlayer();  // 001FAE74

  ~CFTTMusicPlayer();                           // 001FAE8E
  static bool GetUserMusicPlaying();            // 001FADE8
  static void SetUserMusicPlaying(bool);        // 001FADF8
  static CFTTMusicPlayer* Create(char const*);  // 001FAE08
  int GetState();                               // 001FAE9A
  static void UpdateUserMusicPlaying();         // 001FBDAC
  int OpenAudioFile(char const*);               // 001FC3F0
  void FreeNative();                            // 001FC564
  void Play();                                  // 001FC63C
  void Pause();                                 // 001FC678
  void Stop(bool);                              // 001FC6B4
  void SetVolume(float);                        // 001FC6F0

  int state_0;  // text:001FAE9A                 LDR             R0, [R0]
  float field_4;
  TFTTAudio_MusicPlayerNative musicPlayerNative_8;

  static bool m_bUserMusicPlaying;
};

#endif  //_CFTTMUSICPLAYER_H_