Content::Content ()
- : _change_signals_frequent (false)
{
}
Content::Content (DCPTime p)
: _position (p)
- , _change_signals_frequent (false)
{
}
Content::Content (boost::filesystem::path p)
- : _change_signals_frequent (false)
{
add_path (p);
}
Content::Content (cxml::ConstNodePtr node)
- : _change_signals_frequent (false)
{
for (auto i: node->node_children("Path")) {
_paths.push_back (i->content());
, _trim_start (c.front()->trim_start())
, _trim_end (c.back()->trim_end())
, _video_frame_rate (c.front()->video_frame_rate())
- , _change_signals_frequent (false)
{
for (size_t i = 0; i < c.size(); ++i) {
if (i > 0 && c[i]->trim_start() > ContentTime ()) {
string
Content::calculate_digest () const
{
- boost::mutex::scoped_lock lm (_mutex);
- auto p = _paths;
- lm.unlock ();
-
/* Some content files are very big, so we use a poor man's
digest here: a digest of the first and last 1e6 bytes with the
size of the first file tacked on the end as a string.
*/
- return digest_head_tail(p, 1000000) + raw_convert<string>(boost::filesystem::file_size(p.front()));
+ return simple_digest (paths());
}