DCL 4.0
Loading...
Searching...
No Matches
TagReader.h
Go to the documentation of this file.
1#ifndef __DCL_TAG_READER_H__
2#define __DCL_TAG_READER_H__ 20250122
3
4#ifndef __DCL_OBJECT_H__
5#include <dcl/Object.h>
6#endif
7#ifndef __DCL_DATE_TIME_H__
8#include <dcl/DateTime.h>
9#endif
10#ifndef __DCL_SQL_H__
11#include <dcl/SQL.h>
12#endif
13
14#ifndef __DCL_ID3V1_H__
15#include "ID3v1.h"
16#endif
17#ifndef __DCL_ID3V2_H__
18#include "ID3v2.h"
19#endif
20#ifndef __DCL_APEV2_H__
21#include "APEv2.h"
22#endif
23
24__DCL_BEGIN_NAMESPACE
25
26class MainArguments;
27
29{
30public:
31
32 struct FileInfo
33 {
34 FileInfo(const String& _dirname, const String& _filename)
35 : dirname(_dirname), filename(_filename) {
36 size = 0;
37 width = height = 0;
38 duration = 0;
39 }
40
41 const String& dirname;
42 const String& filename;
43
44 uint64_t size;
48 String notes;
49
50 String inform;
51 String format;
52 uint32_t width;
53 uint32_t height;
54 uint32_t duration;
55
59 };
60
61 ~TagReader();
62 TagReader(const MainArguments& _args)
64
65
66
67 void readTag(const String& _path, FileInfo& _info);
68 void print(const FileInfo& _info) const;
69 void read(const String& _dirname, const String& _filename);
70 void readDir(const String& _path);
71
72 const MainArguments& args() const{
73 return __args;
74 }
75
76protected:
79
80 String __dirname;
81 int32_t __dirId;
82 int64_t __fileId;
83
84 void persist(const FileInfo& _info);
85
88};
89
90__DCL_END_NAMESPACE
91
92#endif // __DCL_TAG_READER_H__
#define __DCL_THROWS2(e1, e2)
Definition Config.h:168
Definition APEv2.h:16
Definition ID3v1.h:13
Definition ID3v2.h:16
String __doubleRule
Definition TagReader.h:86
TagReader(const MainArguments &_args) __DCL_THROWS2(SQLDriverException *
Definition TagReader.cpp:50
SQLException *void readTag(const String &_path, FileInfo &_info)
Definition TagReader.cpp:72
void persist(const FileInfo &_info)
String __dirname
Definition TagReader.h:80
SQLConnection * __conn
Definition TagReader.h:78
int32_t __dirId
Definition TagReader.h:81
const MainArguments & args() const
Definition TagReader.h:72
String __singleRule
Definition TagReader.h:87
void read(const String &_dirname, const String &_filename)
void print(const FileInfo &_info) const
const MainArguments & __args
Definition TagReader.h:77
int64_t __fileId
Definition TagReader.h:82
void readDir(const String &_path)
FileInfo(const String &_dirname, const String &_filename)
Definition TagReader.h:34
const String & filename
Definition TagReader.h:42
const String & dirname
Definition TagReader.h:41