Purge Track-Asset from codebase (Ticket #581)

From now on EntryID<mobject::session::Track> will play this role
This commit is contained in:
Fischlurch 2010-06-21 03:43:25 +02:00
parent b7353c6368
commit 562e571624
14 changed files with 3 additions and 155 deletions

View file

@ -57,7 +57,6 @@
#include "proc/mobject/session/track.hpp"
#include "proc/asset/procpatt.hpp"
#include "proc/asset/pipe.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/timeline.hpp"
#include "proc/asset/sequence.hpp"
@ -213,7 +212,6 @@ namespace lumiera { ///////TODO: shouldn't that be namespace lib? or proc?
* rule based config query system
*/
typedef lumiera::typelist::Types < mobject::session::Track
, asset::Track
, asset::Pipe
, const asset::ProcPatt
, asset::Timeline

View file

@ -25,7 +25,6 @@
//#include "proc/mobject/session/track.hpp"
//#include "proc/mobject/placement.hpp"
//#include "proc/mobject/session/mobjectfactory.hpp"
//#include "proc/asset/track.hpp"
namespace asset {

View file

@ -46,7 +46,6 @@
#include "proc/asset/timeline.hpp"
#include "proc/asset/sequence.hpp"
#include "proc/asset/procpatt.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/pipe.hpp"
#include "proc/asset/struct-scheme.hpp"
@ -175,15 +174,6 @@ namespace asset {
/* ============= specialisations =========================== */
template<>
inline Track*
StructFactoryImpl::fabricate (const Query<Track>& caps)
{
TODO ("actually extract properties/capabilities from the query...");
TODO ("make sure AssetManager detects duplicates (currently 4/08 it doesn't)"); /////////////TICKET #102
return new Track (createIdent (caps));
}
template<>
inline const ProcPatt*
StructFactoryImpl::fabricate (const Query<const ProcPatt>& caps)

View file

@ -140,7 +140,6 @@ namespace asset {
#include "proc/asset/struct.hpp"
#include "proc/asset/struct-scheme.hpp"
#include "proc/asset/procpatt.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/pipe.hpp"
#include "proc/asset/timeline.hpp"
#include "proc/asset/sequence.hpp"
@ -149,7 +148,6 @@ namespace asset {
namespace asset {
template P<Pipe> StructFactory::operator() (const Query<Pipe>& query);
template P<Track> StructFactory::operator() (const Query<Track>& query);
template PProcPatt StructFactory::operator() (const Query<const ProcPatt>& query);
template PTimeline StructFactory::operator() (const Query<Timeline>& query);
template PSequence StructFactory::operator() (const Query<Sequence>& query);

View file

@ -26,7 +26,6 @@
//#include "proc/mobject/placement.hpp"
//#include "proc/mobject/session/mobjectfactory.hpp"
#include "proc/mobject/session/binding.hpp"
//#include "proc/asset/track.hpp"
namespace asset {

View file

@ -1,37 +0,0 @@
/*
Track - structural asset holding the configuration of a track in the Session
Copyright (C) Lumiera.org
2008, Hermann Vosseler <Ichthyostega@web.de>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
* *****************************************************/
#include "proc/asset/track.hpp"
namespace asset
{
/** @todo work out the details of track assets */
Track::Track (const Asset::Ident& idi)
: Struct (idi)
{
}
} // namespace asset

View file

@ -1,56 +0,0 @@
/*
TRACK.hpp - structural asset used as global track identifier
Copyright (C) Lumiera.org
2008, Hermann Vosseler <Ichthyostega@web.de>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef ASSET_TRACK_H
#define ASSET_TRACK_H
#include "proc/asset/struct.hpp"
namespace asset {
/**
* Structural Asset used as a global identifier for placing
* media objects onto a given track. Not to be confused with the "track-MO",
* the MObject which becomes part of the high-level-model:
* In order actually to use a track within an Sequence, we need to attach a
* Placement<mobject::session::Track> to the tree-of-tracks of this Sequence.
* Thus, we have one global track-identifier (this class here), but maybe
* several instances (placement of a track-MO) within various Sequences
*/
class Track : public Struct
{
protected:
Track (const Asset::Ident& idi);
friend class StructFactoryImpl;
};
typedef P<const Track> PTrack;
} // namespace asset
#endif

View file

@ -234,7 +234,6 @@ namespace asset {
#include "proc/asset/clip.hpp"
#include "proc/asset/proc.hpp"
#include "proc/asset/struct.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/pipe.hpp"
#include "proc/asset/meta.hpp"
#include "proc/asset/procpatt.hpp"
@ -256,7 +255,6 @@ namespace asset {
template P<Asset> AssetManager::wrap (const Asset& asset);
template P<Media> AssetManager::wrap (const Media& asset);
template P<Clip> AssetManager::wrap (const Clip& asset);
template P<Track> AssetManager::wrap (const Track& asset);
template P<Pipe> AssetManager::wrap (const Pipe& asset);
template P<ProcPatt> AssetManager::wrap (const ProcPatt& asset);
template P<Timeline> AssetManager::wrap (const Timeline& asset);

View file

@ -140,7 +140,6 @@ namespace session {
#include "proc/asset/procpatt.hpp"
#include "proc/asset/pipe.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/timeline.hpp"
#include "proc/asset/sequence.hpp"
#include "proc/mobject/session/track.hpp"
@ -159,14 +158,11 @@ namespace session {
using asset::PSequence;
using mobject::session::Track;
using mobject::session::TrackAsset;
using mobject::session::PTrack;
using mobject::session::PTrackAsset;
template PPipe DefsManager::operator() (const Query<Pipe>&);
template PProcPatt DefsManager::operator() (const Query<const ProcPatt>&);
template PTrack DefsManager::operator() (const Query<Track>&);
template PTrackAsset DefsManager::operator() (const Query<TrackAsset>&);
template PTimeline DefsManager::operator() (const Query<Timeline>&);
template PSequence DefsManager::operator() (const Query<Sequence>&);

View file

@ -29,7 +29,6 @@
#include "proc/mobject/session/label.hpp"
#include "proc/mobject/session/binding.hpp"
#include "proc/asset/clip.hpp"
#include "proc/asset/track.hpp"
#include "proc/asset/effect.hpp"
namespace mobject {
@ -82,14 +81,6 @@ namespace session {
UNIMPLEMENTED ("build multichannel compound clip-MO");
}
/** */
Placement<Track>
MObjectFactory::operator() (PTrackAsset& trackDef) /////////////////////TICKET #581 kill kill kill the track-asset
{
TODO ("what needs to be registered when creating an Track-MO?");
return Placement<Track> (*new Track (trackDef), &deleterFunc);
}
/** fabricate a new track-MObject, using the given unique ID */
Placement<Track>
MObjectFactory::operator() (TrackID const& id)

View file

@ -34,7 +34,6 @@ namespace asset {
class Clip;
class Media;
class Track;
class Effect;
class Sequence;
@ -52,8 +51,6 @@ namespace session {
class Label;
class Binding;
typedef P<asset::Track> PTrackAsset;
class DefsManager;
@ -69,8 +66,7 @@ namespace session {
Placement<Root> operator() (DefsManager&);
Placement<Clip> operator() (asset::Clip const&, asset::Media const&);
Placement<Clip> operator() (asset::Clip const&, vector<asset::Media const*>);
Placement<Track> operator() (PTrackAsset&); ////////////////////////////////////////////////////TICKET #581 kill kill kill the track-asset
Placement<Track> operator() (asset::EntryID<Track> const&); ////////////TICKET #581 use this one instead
Placement<Track> operator() (asset::EntryID<Track> const&);
Placement<Effect> operator() (asset::Effect const&);
Placement<Label> operator() (lib::Symbol);
Placement<Binding>operator() (asset::PSequence const&);

View file

@ -29,7 +29,6 @@
//#include "proc/mobject/session/track.hpp"
//#include "proc/mobject/placement.hpp"
//#include "proc/mobject/session/mobjectfactory.hpp"
//#include "proc/asset/track.hpp"
namespace mobject {
namespace session {

View file

@ -22,31 +22,17 @@
#include "proc/mobject/session/track.hpp"
#include "proc/asset/track.hpp"
namespace mobject {
namespace session {
/** new track-MO linked with the given asset::Track.
* Initially, the reference (zero-point) time of this track
* will be set to 0
*/
Track::Track (PTrackAsset& trackDef)
: start_(0),
trackDef_(trackDef) /////////////////////TICKET #581 kill kill kill the track-asset
{
throwIfInvalid();
}
/** create a new track-MObject based on the given unique ID.
* Initially, the reference (zero-point) time of this track
* will be set to 0
*/
Track::Track (TrackID const& trackID)
: start_(0),
trackDef_() /////////////////////TICKET #581 kill kill kill the track-asset
: start_(0)
, id_(trackID)
{
throwIfInvalid();
@ -56,7 +42,7 @@ namespace session {
bool
Track::isValid() const
{
return bool(trackDef_);
return bool(id_.isValid()); ////////TODO anything more 'real' to check?
}

View file

@ -29,21 +29,14 @@
namespace asset {
class Track; /////////////////////TICKET #581 kill kill kill the track-asset
}
namespace mobject {
namespace session { //////////////////////////////////////////////////////TICKET #637
using lumiera::P;
class Track;
typedef asset::Track TrackAsset;
typedef P<Track> PTrack;
typedef P<TrackAsset> PTrackAsset;
}}
@ -81,11 +74,9 @@ namespace session {
class Track : public Meta
{
Time start_;
PTrackAsset trackDef_;
TrackID id_;
protected:
Track (PTrackAsset&); /////////////////////TICKET #581 kill kill kill the track-asset
Track (TrackID const&);
friend class MObjectFactory;