Lumiera  0.pre.03
»edit your freedom«
unknown.hpp
Go to the documentation of this file.
1 /*
2  UNKNOWN.hpp - placeholder for unknown or unavailable media source
3 
4  Copyright (C)
5  2008, Hermann Vosseler <Ichthyostega@web.de>
6 
7   **Lumiera** is free software; you can redistribute it and/or modify it
8   under the terms of the GNU General Public License as published by the
9   Free Software Foundation; either version 2 of the License, or (at your
10   option) any later version. See the file COPYING for further details.
11 
12 */
13 
14 
23 #ifndef ASSET_UNKNOWN_H
24 #define ASSET_UNKNOWN_H
25 
26 #include "steam/asset/media.hpp"
27 #include "lib/time/timevalue.hpp"
28 
29 
30 
31 namespace steam {
32 namespace asset {
33 
34  using lib::time::FSecs;
35  using lib::time::Duration;
36 
37  const Duration DUMMY_TIME (FSecs(5));
38 
45  class Unknown : public Media
46  {
47  protected:
48  Unknown (const Asset::Ident& idi, string name="", Duration length=DUMMY_TIME);
49  friend class MediaFactory;
50 
51  public:
52  virtual Media::PMedia getOrg();
53 
54  };
55 
56  LUMIERA_ERROR_DECLARE (ORIG_NOT_FOUND);
57 
58 
59 
60 
61 }} // namespace steam::asset
62 #endif
Unknown(const Asset::Ident &idi, string name="", Duration length=DUMMY_TIME)
create a placeholder for a media with the given identity.
Definition: unknown.cpp:37
key abstraction: media-like assets
Definition: media.hpp:63
Media data represented a specific kind of Asset.
#define LUMIERA_ERROR_DECLARE(err)
Forward declare an error constant.
Definition: error.h:62
Steam-Layer implementation namespace root.
Factory specialised for creating Media Asset objects.
Definition: media.hpp:134
a POD comprised of all the information sufficiently identifying any given Asset.
Definition: asset.hpp:149
virtual Media::PMedia getOrg()
using the information stored in this placeholder asset, try to access the "real" media it stands for...
Definition: unknown.cpp:48
Placeholder Asset for unknown or unavailable media source.
Definition: unknown.hpp:45
boost::rational< int64_t > FSecs
rational representation of fractional seconds
Definition: timevalue.hpp:220
const Duration DUMMY_TIME(FSecs(5))
Duration is the internal Lumiera time metric.
Definition: timevalue.hpp:468
Customised refcounting smart pointer template, built upon std::shared_ptr, but forwarding type relati...
Definition: trait.hpp:71
a family of time value like entities and their relationships.
The asset subsystem of the Steam-Layer.
Definition: wrapperptr.hpp:35
ElementBoxWidget::Config::Qualifier name(string id)
define the name-ID displayed in the caption