diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/image.cc | 47 | ||||
| -rw-r--r-- | src/image.h | 47 |
2 files changed, 94 insertions, 0 deletions
diff --git a/src/image.cc b/src/image.cc new file mode 100644 index 00000000..24174fca --- /dev/null +++ b/src/image.cc @@ -0,0 +1,47 @@ +/* + Copyright (C) 2012 Carl Hetherington <cth@carlh.net> + + 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 + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#include "image.h" + +using boost::shared_ptr; +using namespace libdcp; + +Image::Image (Size s) + : _size (s) +{ + +} + +Image::Image (Image const & other) + : _size (other._size) +{ + +} + +Image::Image (shared_ptr<const Image> other) + : _size (other->_size) +{ + +} + +void +Image::swap (Image& other) +{ + std::swap (_size, other._size); +} diff --git a/src/image.h b/src/image.h new file mode 100644 index 00000000..8b7fee09 --- /dev/null +++ b/src/image.h @@ -0,0 +1,47 @@ +/* + Copyright (C) 2012 Carl Hetherington <cth@carlh.net> + + 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 + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#include "util.h" + +namespace libdcp { + +class Image +{ +public: + + Image (Size); + Image (Image const &); + Image (boost::shared_ptr<const Image>); + + virtual ~Image () {} + virtual uint8_t** data () const = 0; + virtual int* stride () const = 0; + + Size size () const { + return _size; + } + +protected: + void swap (Image &); + + Size _size; + +}; + +} |
