forked from Sneeds-Feed-and-Seed/sneedacity
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPlatformCompatibility.h
44 lines (33 loc) · 1.36 KB
/
PlatformCompatibility.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/**********************************************************************
Sneedacity: A Digital Audio Editor
PlatformCompatibility.h
Platform-specific compatibility functions
This file implements functions needed to work around
platform-specific problems and which cannot be solved by a simple
#ifdef/#endif plus two or three lines additional code. Wherever
possible, the implementation should be such, that the function is
implemented on every platform, but is a dummy for those platforms
on which it is not needed, so additional #ifdef's are unnecessary.
Markus Meyer
**********************************************************************/
#ifndef __SNEEDACITY_COMPATIBILITY__
#define __SNEEDACITY_COMPATIBILITY__
#include "Identifier.h"
class SNEEDACITY_DLL_API PlatformCompatibility
{
public:
//
// On Win32, this function gets the long file name (like
// "C:\Program Files\Project.aup3") from a short file name like
// "C:\PROGRA~1\PROJEC~1.AUP. On other systems, the function
// just returns the exact string it is given.
//
static FilePath GetLongFileName(const FilePath& shortFileName);
//
// Get filename and path of executable (e.g. "/usr/bin/sneedacity" on
// Linux or "C:\Program Files\Sneedacity\Sneedacity.exe" on Windows)
// This string is unchanging
//
static const FilePath &GetExecutablePath();
};
#endif