/* Copyright (C) 2007-2008 Erik Faye-Lund and Egbert Teeselink * For conditions of distribution and use, see copyright notice in LICENSE.TXT */ #pragma once #include #include #include #include #include #include #ifdef WIN32 #include #else #define TCHAR char #endif #include "track.h" namespace sync { class Data { public: ~Data(); int getTrackIndex(const std::basic_string &name); size_t createTrack(const std::basic_string &name); Track & getTrack(size_t track) { assert(track < tracks.size()); assert(NULL != tracks[track]); return *tracks[track]; } const Track & getTrack(size_t track) const { assert(track < tracks.size()); assert(NULL != tracks[track]); return *tracks[track]; } size_t getTrackCount() const { return tracks.size(); } protected: std::vector tracks; }; }