* Minor fixes in database storage
[someplayer] / src / track.cpp
1 #include "track.h"
2 #include "tagresolver.h"
3
4 using namespace SomePlayer::DataObjects;
5
6 Track::Track() : QObject() {
7 }
8
9 Track::Track(int id, TrackMetadata metadata, QString source) : QObject() {
10         _id = id;
11         _metadata = metadata;
12         _source = source;
13 }
14
15 Track::Track(const Track &track) : QObject() {
16         this->_metadata = track.metadata();
17         this->_source = track.source();
18 }
19
20 Track::Track(QString source) :QObject() {
21         _resolver = new TagResolver(this);
22         connect(_resolver, SIGNAL(decoded(Track)), this, SLOT(decoded(Track)));
23         QStringList foo;
24         foo << source;
25         _resolver->decode(foo);
26 }
27
28 TrackMetadata Track::metadata() const {
29         return _metadata;
30 }
31
32 QString Track::source() const {
33         return _source;
34 }
35
36 int Track::id() const {
37         return _id;
38 }
39
40 void Track::setSource(QString source) {
41         _source = source;
42 }
43
44 int Track::count() const{
45         return _count;
46 }
47
48 void Track::setCount(int count) {
49         _count = count;
50 }
51
52 void Track::decoded(Track track) {
53         _id = track.id();
54         _source = track.source();
55         _metadata = track.metadata();
56         delete _resolver;
57 }
58
59 Track &Track::operator =(const Track &track) {
60         _id = track.id();
61         _source = track.source();
62         _metadata = track.metadata();
63         return *this;
64 }
65
66 Track::~Track() {}