projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Some basic documentation of the timeline.
[dcpomatic.git]
/
src
/
lib
/
dcp_content.h
diff --git
a/src/lib/dcp_content.h
b/src/lib/dcp_content.h
index 43476e729c7f8ca3495bb26dcde21988b96dc4e5..763b3e903358ff1809e289486bc1a6b504e8f7d5 100644
(file)
--- a/
src/lib/dcp_content.h
+++ b/
src/lib/dcp_content.h
@@
-50,8
+50,8
@@
class ContentPart;
class DCPContent : public Content
{
public:
class DCPContent : public Content
{
public:
- DCPContent (boost::
shared_ptr<const Film>, boost::
filesystem::path p);
- DCPContent (
boost::shared_ptr<const Film>,
cxml::ConstNodePtr, int version);
+ DCPContent (boost::filesystem::path p);
+ DCPContent (cxml::ConstNodePtr, int version);
boost::shared_ptr<DCPContent> shared_from_this () {
return boost::dynamic_pointer_cast<DCPContent> (Content::shared_from_this ());
boost::shared_ptr<DCPContent> shared_from_this () {
return boost::dynamic_pointer_cast<DCPContent> (Content::shared_from_this ());
@@
-61,9
+61,10
@@
public:
return boost::dynamic_pointer_cast<const DCPContent> (Content::shared_from_this ());
}
return boost::dynamic_pointer_cast<const DCPContent> (Content::shared_from_this ());
}
- DCPTime full_length () const;
+ DCPTime full_length (boost::shared_ptr<const Film> film) const;
+ DCPTime approximate_length () const;
- void examine (boost::shared_ptr<Job>);
+ void examine (boost::shared_ptr<
const Film> film, boost::shared_ptr<
Job>);
std::string summary () const;
std::string technical_summary () const;
void as_xml (xmlpp::Node *, bool with_paths) const;
std::string summary () const;
std::string technical_summary () const;
void as_xml (xmlpp::Node *, bool with_paths) const;
@@
-71,7
+72,7
@@
public:
void take_settings_from (boost::shared_ptr<const Content> c);
void set_default_colour_conversion ();
void take_settings_from (boost::shared_ptr<const Content> c);
void set_default_colour_conversion ();
- std::list<DCPTime> reel_split_points () const;
+ std::list<DCPTime> reel_split_points (
boost::shared_ptr<const Film> film
) const;
std::vector<boost::filesystem::path> directories () const;
std::vector<boost::filesystem::path> directories () const;
@@
-98,7
+99,7
@@
public:
return _reference_video;
}
return _reference_video;
}
- bool can_reference_video (std::string &) const;
+ bool can_reference_video (
boost::shared_ptr<const Film> film,
std::string &) const;
void set_reference_audio (bool r);
void set_reference_audio (bool r);
@@
-107,7
+108,7
@@
public:
return _reference_audio;
}
return _reference_audio;
}
- bool can_reference_audio (std::string &) const;
+ bool can_reference_audio (
boost::shared_ptr<const Film> film,
std::string &) const;
void set_reference_text (TextType type, bool r);
void set_reference_text (TextType type, bool r);
@@
-119,7
+120,7
@@
public:
return _reference_text[type];
}
return _reference_text[type];
}
- bool can_reference_text (TextType type, std::string &) const;
+ bool can_reference_text (
boost::shared_ptr<const Film> film,
TextType type, std::string &) const;
void set_cpl (std::string id);
void set_cpl (std::string id);
@@
-138,14
+139,23
@@
public:
return _three_d;
}
return _three_d;
}
+ boost::optional<dcp::ContentKind> content_kind () const {
+ boost::mutex::scoped_lock lm (_mutex);
+ return _content_kind;
+ }
+
+ bool kdm_timing_window_valid () const;
+
private:
friend class reels_test5;
private:
friend class reels_test5;
- void add_properties (std::list<UserProperty>& p) const;
+ void add_properties (
boost::shared_ptr<const Film> film,
std::list<UserProperty>& p) const;
void read_directory (boost::filesystem::path);
void read_directory (boost::filesystem::path);
- std::list<DCPTimePeriod> reels () const;
+ void read_sub_directory (boost::filesystem::path);
+ std::list<DCPTimePeriod> reels (boost::shared_ptr<const Film> film) const;
bool can_reference (
bool can_reference (
+ boost::shared_ptr<const Film> film,
boost::function <bool (boost::shared_ptr<const Content>)>,
std::string overlapping,
std::string& why_not
boost::function <bool (boost::shared_ptr<const Content>)>,
std::string overlapping,
std::string& why_not
@@
-174,6
+184,7
@@
private:
bool _reference_text[TEXT_COUNT];
boost::optional<dcp::Standard> _standard;
bool _reference_text[TEXT_COUNT];
boost::optional<dcp::Standard> _standard;
+ boost::optional<dcp::ContentKind> _content_kind;
bool _three_d;
/** ID of the CPL to use; older metadata might not specify this: in that case
* just use the only CPL.
bool _three_d;
/** ID of the CPL to use; older metadata might not specify this: in that case
* just use the only CPL.