/*
* CINELERRA
* Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
+ * Copyright (C) 2003-2016 Cinelerra CV contributors
*
* 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
~EXRIStream();
bool read (char c[], int n);
- Imf::Int64 tellg ();
- void seekg (Imf::Int64 pos);
+ uint64_t tellg ();
+ void seekg (uint64_t pos);
void clear ();
private:
~EXROStream();
virtual void write(const char c[], int n);
- virtual Imf::Int64 tellp();
- virtual void seekp(Imf::Int64 pos);
+ virtual uint64_t tellp();
+ virtual void seekp(uint64_t pos);
private:
VFrame *data;
return position >= size;
}
-Imf::Int64 EXRIStream::tellg ()
+uint64_t EXRIStream::tellg ()
{
return position;
}
-void EXRIStream::seekg(Imf::Int64 pos)
+void EXRIStream::seekg(uint64_t pos)
{
position = pos;
}
data->set_compressed_size(MAX(position, data->get_compressed_size()));
}
-Imf::Int64 EXROStream::tellp()
+uint64_t EXROStream::tellp()
{
return position;
}
-void EXROStream::seekp(Imf::Int64 pos)
+void EXROStream::seekp(uint64_t pos)
{
position = pos;
}
return 0;
}
+int FileEXR::can_copy_from(Asset *asset, int64_t position)
+{
+ if(asset->format == FILE_EXR ||
+ asset->format == FILE_EXR_LIST)
+ return 1;
+
+ return 0;
+}
+
FrameWriterUnit* FileEXR::new_writer_unit(FrameWriter *writer)
{
return new EXRUnit(this, writer);