Pleora Technologies Inc. eBUS SDK v6.5.1.6797 API



PvPleoraCompressed.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2023, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVPLEORACOMPRESSED_H__
8 #define __PVPLEORACOMPRESSED_H__
9 
10 #include <PvResult.h>
11 #include <PvTypes.h>
12 #include <PvPixelType.h>
13 
26 class PV_BUFFER_API PvPleoraCompressed
27 {
28 public:
29 
30  virtual ~PvPleoraCompressed() {}
31 
41  virtual uint64_t GetPayloadLength() const = 0;
42 
48  virtual void SetPayloadLength( uint64_t aLength ) = 0;
49 
62  virtual PvResult Alloc( uint64_t aPayloadLength ) = 0;
63 
69  virtual void Free() = 0;
70 
86  virtual PvResult Attach( void * aRawBuffer, uint64_t aPayloadLength ) = 0;
87 
97  virtual uint8_t *Detach() = 0;
98 
99 private:
100 
101  // Not implemented
102  //PvPleoraCompressed( const PvPleoraCompressed & );
103  //const PvPleoraCompressed &operator=( const PvPleoraCompressed & );
104 };
105 
106 #endif // __PVPLEORACOMPRESSED_H__
Pleora compressed interface to a PvBuffer.
Definition: PvPleoraCompressed.h:27
virtual PvResult Alloc(uint64_t aPayloadLength)=0
Allocates memory for this PvPleoraCompressed.
virtual PvResult Attach(void *aRawBuffer, uint64_t aPayloadLength)=0
Attach this PvPleoraCompressed to an external memory buffer.
virtual uint64_t GetPayloadLength() const =0
Get the payload length specified in the leader information of this block.
virtual void Free()=0
Frees (de-allocates) the buffer's internal memory.
virtual void SetPayloadLength(uint64_t aLength)=0
Sets the effective payload length for the buffer.
virtual uint8_t * Detach()=0
Releases an attached memory buffer.
Result information.
Definition: PvResult.h:30

Copyright (c) 2002-2024 Pleora Technologies Inc.
www.pleora.com