-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSongFile.h
More file actions
30 lines (23 loc) · 991 Bytes
/
SongFile.h
File metadata and controls
30 lines (23 loc) · 991 Bytes
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
#include "ASSFile.h"
#include "ENLyricFile.h"
#include <string>
#include <vector>
class SongFile
{
private:
ASSFileWithSwitch data;
void configureStyles(ASSFileWithSwitch& input);
bool canFindUnmatchedLine(ASSFileWithSwitch& file1, ASSFileWithSwitch& file2);
ASSFileWithSwitch mergeStylesIntoFile(ASSFileWithSwitch& original, ASSFileWithSwitch& toMerge);
void checkNumberOfLines(ASSFileWithSwitch& ASS, ENLyricFile& EN);
ASSLineWithSwitch createDividerLine(std::string input, ASSTime startTime, ASSTime endTime);
ASSLineWithSwitch createMetadataLine(std::vector <std::string> input, ASSTime startTime, ASSTime endTime);
ASSLineWithSwitch createENLine(ASSLineWithSwitch JPline, std::string ENtext);
public:
SongFile(std::string styleFileName, std::string karaokeFileName, std::string ENFileName, std::string metadataFileName);
void printFile(std::string outFileName);
ASSFileWithSwitch getFile();
ASSTime getStart();
ASSTime getEnd();
void offsetFile(ASSTime offset);
};