00001 /* 00002 CLIP.hpp - bookkeeping (asset) view of a media clip. 00003 00004 Copyright (C) Lumiera.org 00005 2008, Hermann Vosseler <Ichthyostega@web.de> 00006 00007 This program is free software; you can redistribute it and/or 00008 modify it under the terms of the GNU General Public License as 00009 published by the Free Software Foundation; either version 2 of the 00010 License, or (at your option) any later version. 00011 00012 This program is distributed in the hope that it will be useful, 00013 but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 GNU General Public License for more details. 00016 00017 You should have received a copy of the GNU General Public License 00018 along with this program; if not, write to the Free Software 00019 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00020 00021 */ 00022 00023 00024 #ifndef ASSET_CLIP_H 00025 #define ASSET_CLIP_H 00026 00027 #include "proc/asset/media.hpp" 00028 00029 00030 00031 namespace asset 00032 { 00036 class Clip : public Media 00037 { 00039 const Media& source_; 00040 00042 PClipMO clipMO_; 00043 00044 public: 00045 virtual PClipMO createClip () const; 00046 00047 protected: 00048 Clip (Media& mediaref); 00049 friend class MediaFactory; 00050 00051 virtual PClip getClipAsset (); 00052 virtual PMedia checkCompound (); 00053 00054 }; 00055 00056 typedef P<const asset::Clip> PClipAsset; 00057 00058 const string CLIP_SUBFOLDER = "clips"; // TODO: handling of hard-wired constants.... 00059 00060 00061 00062 } // namespace asset 00063 #endif
1.5.6