123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- #ifndef _EGLSTREAM_IMAGE_H
- #define _EGLSTREAM_IMAGE_H
- namespace EGLStream
- {
- class Image : public Argus::InterfaceProvider
- {
- protected:
- ~Image() {}
- };
- DEFINE_UUID(Argus::InterfaceID, IID_IMAGE, 546F4522,87EF,11E5,A837,08,00,20,0C,9A,66);
- class IImage : public Argus::Interface
- {
- public:
- static const Argus::InterfaceID& id() { return IID_IMAGE; }
-
- virtual uint32_t getBufferCount() const = 0;
-
- virtual uint64_t getBufferSize(uint32_t index = 0) const = 0;
-
- virtual const void* mapBuffer(uint32_t index, Argus::Status* status = NULL) = 0;
-
- virtual const void* mapBuffer(Argus::Status* status = NULL) = 0;
- protected:
- ~IImage() {}
- };
- DEFINE_UUID(Argus::InterfaceID, IID_IMAGE_2D, 546F4525,87EF,11E5,A837,08,00,20,0C,9A,66);
- class IImage2D : public Argus::Interface
- {
- public:
- static const Argus::InterfaceID& id() { return IID_IMAGE_2D; }
-
- virtual Argus::Size2D<uint32_t> getSize(uint32_t index = 0) const = 0;
-
- virtual uint32_t getStride(uint32_t index = 0) const = 0;
- protected:
- ~IImage2D() {}
- };
- DEFINE_UUID(Argus::InterfaceID, IID_IMAGE_JPEG, 48aeddc9,c8d8,11e5,a837,08,00,20,0c,9a,66);
- class IImageJPEG : public Argus::Interface
- {
- public:
- static const Argus::InterfaceID& id() { return IID_IMAGE_JPEG; }
-
- virtual Argus::Status writeJPEG(const char* path) const = 0;
- protected:
- ~IImageJPEG() {}
- };
- DEFINE_UUID(Argus::InterfaceID, IID_IMAGE_HEADERLESS_FILE,
- 03018970,9254,11e7,9598,08,00,20,0c,9a,66);
- class IImageHeaderlessFile : public Argus::Interface
- {
- public:
- static const Argus::InterfaceID& id() { return IID_IMAGE_HEADERLESS_FILE; }
-
- virtual Argus::Status writeHeaderlessFile(const char* path) const = 0;
- protected:
- ~IImageHeaderlessFile() {}
- };
- }
- #endif
|