123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- #include "WifiPlaylist.h"
- #include "api.h"
- #include "nu/AutoWide.h"
- /* ---- WifiTrack ---- */
- WifiTrack::WifiTrack()
- {
- last_updated=0;
- id=0;
- artist=0;
- album=0;
- composer=0;
- duration=0;
- track=0;
- year=0;
- size=0;
- title=0;
- mime_type=0;
- }
- WifiTrack::WifiTrack(const char *id, const itemRecordW *record, const wchar_t *filename)
- {
- this->id=AutoWideDup(id);
- artist=_wcsdup(record->artist);
- album=_wcsdup(record->album);
- composer=_wcsdup(record->composer);
- duration=record->length;
- track=record->track;
- year=record->year;
- size=record->filesize;
- title=_wcsdup(record->title);
- wchar_t mime[128] = {0};
- if (AGAVE_API_METADATA->GetExtendedFileInfo(filename, L"mime", mime, 128) && mime[0])
- {
- mime_type=_wcsdup(mime);
- }
- else
- {
- mime_type=0;
- }
- last_updated=record->lastupd;
- }
- WifiTrack::WifiTrack(const WifiTrack ©)
- {
- id=_wcsdup(copy.id);
- artist=_wcsdup(copy.artist);
- album=_wcsdup(copy.album);
- composer=_wcsdup(copy.composer);
- duration=copy.duration;
- track=copy.track;
- year=copy.year;
- size=copy.size;
- title=_wcsdup(copy.title);
- mime_type=_wcsdup(copy.mime_type);
- last_updated=copy.last_updated;
- }
- WifiTrack::~WifiTrack()
- {
- free(id);
- free(artist);
- free(album);
- free(composer);
- free(title);
- free(mime_type);
- }
- /* ---- WifiPlaylist ---- */
- WifiPlaylist::WifiPlaylist()
- {
- id=0;
- name=0;
- }
- WifiPlaylist::WifiPlaylist(const char *id, const wchar_t *name)
- {
- this->id = AutoWideDup(id);
- this->name = _wcsdup(name);
- }
- WifiPlaylist::~WifiPlaylist()
- {
- free(id);
- free(name);
- //tracks.deleteAll();
- for (auto obj : tracks)
- {
- delete obj;
- }
- tracks.clear();
- }
- void WifiPlaylist::SetName(const wchar_t *new_name)
- {
- if (name != new_name)
- {
- free(name);
- name = _wcsdup(new_name);
- }
- }
|