Fission FSN
Loading...
Searching...
No Matches
fsCResourceName.h
Go to the documentation of this file.
1/********************************************************************
2*
3* Created: 14/2/2014 9:49
4*
5* File: fsCResourceName.h
6*
7* Author: Mick Waites
8*
9* Purpose: To avoid using hard coded strings for filenames. The
10* stored filename may be automatically converted to
11* automatically load a localised resource, for example.
12*
13* Also adds virtual pathing for saving files to
14* authorized locations - not windows install location
15*
16*
17*********************************************************************/
18
19#ifndef fsCResourceNamehdr
20#define fsCResourceNamehdr
21
22#include <functional>
23
24#include "../fsStr.h"
26
27class fsCAppSettings;
28class fsIHardware;
29
30
32{
33public:
34
41
42 static void chapterAdapterAdd(std::function<void(fsStr&, fsCResourceName::eResourceLocation)> pAdaptar);
43 static void chapterAdapterClear();
44
45 const fsStr& nameGet() const;
47
48
49 static void init(fsCAppSettings* const pAppSettings, fsIHardware* const pHardware);
50 static void savedDataFolderCreate();
52 static fsBool platformSpecificFileExists(const fsStr& pFileName, eResourceLocation pLocation, fsStr pTestDeviceStr);
53 static void targetTestPlatformSet(fsStr const& pTestDeviceStr);
54
55 fsCResourceName(const fsStr& pFileName, eResourceLocation pLocation);
58
59protected:
60
61private:
62
63#if defined fsTileMap || defined fsSpriter
64 void externalFilenamesTrim();
65#endif
66
67 fsStr mFileName;
68 eResourceLocation mLocation;
69};
70
71#endif
Definition fsCAppSettings.h:22
static void targetTestPlatformSet(fsStr const &pTestDeviceStr)
Definition fsCResourceName.cpp:56
static fsStr savedDataFolderGet()
Definition fsCResourceName.cpp:51
fsCResourceName()
Definition fsCResourceName.cpp:96
eResourceLocation
Definition fsCResourceName.h:36
@ eRES_LOCATION_USER_SETTINGS
Definition fsCResourceName.h:38
@ eRES_LOCATION_ASSETS
Definition fsCResourceName.h:37
@ eRES_LOCATION_LOG
Definition fsCResourceName.h:39
static void chapterAdapterAdd(std::function< void(fsStr &, fsCResourceName::eResourceLocation)> pAdaptar)
Definition fsCResourceName.cpp:26
const fsStr & nameGet() const
Definition fsCResourceName.cpp:36
static fsBool platformSpecificFileExists(const fsStr &pFileName, eResourceLocation pLocation, fsStr pTestDeviceStr)
Definition fsCResourceName.cpp:61
static void chapterAdapterClear()
Definition fsCResourceName.cpp:31
static void savedDataFolderCreate()
Definition fsCResourceName.cpp:46
fsCResourceName(const fsStr &pFileName, eResourceLocation pLocation)
Definition fsCResourceName.cpp:80
static void init(fsCAppSettings *const pAppSettings, fsIHardware *const pHardware)
Definition fsCResourceName.cpp:21
~fsCResourceName()
Definition fsCResourceName.cpp:102
eResourceLocation locationGet() const
Definition fsCResourceName.cpp:41
Definition fsIHardware.h:25
Definition fsStr.h:23
bool fsBool
Definition fsBaseTypes.h:26