CommonLibSSE NG
BSScaleformManager.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSString.h"
4 #include "RE/B/BSTSingleton.h"
5 #include "RE/G/GFxMovieView.h"
6 #include "RE/G/GPtr.h"
7 
8 namespace RE
9 {
10  class BSScaleformImageLoader;
11  class GFxDrawTextManager;
12  class GFxLoader;
13  class GFxMovieDef;
14  class GFxRenderConfig;
15  class IMenu;
16 
18  {
19  public:
20  // members
22  };
23  static_assert(sizeof(BSScaleformRenderer) == 0x8);
24 
25  class BSScaleformManager : public BSTSingletonSDM<BSScaleformManager>
26  {
27  public:
29 
31  static bool FileExists(const char* a_fileName);
32 
33  bool IsValidName(const char* a_name);
34 
35  bool LoadMovie(IMenu* a_menu, GPtr<GFxMovieView>& a_viewOut, const char* a_fileName, ScaleModeType a_mode = ScaleModeType::kShowAll, float a_backGroundAlpha = 0.0);
36 
37  bool LoadMovieEx(IMenu* a_menu, std::string_view a_fileName, std::function<void(GFxMovieDef*)> a_callback);
38  bool LoadMovieEx(IMenu* a_menu, std::string_view a_fileName, ScaleModeType a_mode, std::function<void(GFxMovieDef*)> a_callback);
39  bool LoadMovieEx(IMenu* a_menu, std::string_view a_fileName, ScaleModeType a_mode, float a_backGroundAlpha, std::function<void(GFxMovieDef*)> a_callback);
40 
41  bool LoadMovie_Impl(IMenu* a_menu, GPtr<GFxMovieView>& a_viewOut, const char* a_fileName, ScaleModeType a_mode = ScaleModeType::kShowAll, float a_backGroundAlpha = 0.0);
42 
43  // members
44  std::uint8_t pad01; // 01
45  std::uint16_t pad02; // 02
46  std::uint32_t pad04; // 04
47  GFxLoader* loader; // 08
52  std::uint64_t unk38; // 38
53 
54  private:
55  static std::optional<std::string> BuildFilePath(std::string_view a_fileName);
56  static std::tuple<float, float, std::int32_t, std::int32_t> CollectDisplayInfo();
57  };
58  static_assert(sizeof(BSScaleformManager) == 0x40);
59 }
Definition: BSScaleformManager.h:26
BSScaleformRenderer * renderer
Definition: BSScaleformManager.h:48
static bool FileExists(const char *a_fileName)
GPtr< GFxDrawTextManager > textManager
Definition: BSScaleformManager.h:49
bool LoadMovieEx(IMenu *a_menu, std::string_view a_fileName, std::function< void(GFxMovieDef *)> a_callback)
bool LoadMovie_Impl(IMenu *a_menu, GPtr< GFxMovieView > &a_viewOut, const char *a_fileName, ScaleModeType a_mode=ScaleModeType::kShowAll, float a_backGroundAlpha=0.0)
GFxLoader * loader
Definition: BSScaleformManager.h:47
std::uint32_t pad04
Definition: BSScaleformManager.h:46
bool LoadMovieEx(IMenu *a_menu, std::string_view a_fileName, ScaleModeType a_mode, float a_backGroundAlpha, std::function< void(GFxMovieDef *)> a_callback)
bool LoadMovieEx(IMenu *a_menu, std::string_view a_fileName, ScaleModeType a_mode, std::function< void(GFxMovieDef *)> a_callback)
GPtr< BSScaleformImageLoader > imageLoader
Definition: BSScaleformManager.h:50
bool LoadMovie(IMenu *a_menu, GPtr< GFxMovieView > &a_viewOut, const char *a_fileName, ScaleModeType a_mode=ScaleModeType::kShowAll, float a_backGroundAlpha=0.0)
static BSScaleformManager * GetSingleton()
std::uint8_t pad01
Definition: BSScaleformManager.h:44
bool IsValidName(const char *a_name)
std::uint64_t unk38
Definition: BSScaleformManager.h:52
BSString validNameChars
Definition: BSScaleformManager.h:51
std::uint16_t pad02
Definition: BSScaleformManager.h:45
Definition: GFxLoader.h:19
Definition: GFxMovieDef.h:21
ScaleModeType
Definition: GFxMovieView.h:30
Definition: GPtr.h:7
Definition: IMenu.h:55
Definition: AbsorbEffect.h:6
Definition: BSScaleformManager.h:18
GPtr< GFxRenderConfig > config
Definition: BSScaleformManager.h:21
Definition: BSTSingleton.h:50