Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvDisplayThread.h
1// *****************************************************************************
2//
3// Copyright (c) 2010, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#ifndef __PVDISPLAYTHREAD_H__
8#define __PVDISPLAYTHREAD_H__
9
10#include <PvAppUtilsLib.h>
11#include <PvPropertyList.h>
12#include <PvDeinterlacingType.h>
13#include <PvTapGeometry.h>
14
15
16namespace PvAppUtilsLib
17{
18 class DisplayThread;
19 class DisplayThreadProxy;
20}
21
22class PvBuffer;
23class PvPipeline;
25
29class PV_APPUTILS_API PvDisplayThread
30{
31public:
32
37
41 virtual ~PvDisplayThread();
42
51 PvResult Start( PvPipeline *aPipeline, PvGenParameterArray *aParameters );
52
59 PvResult Stop( bool aWait );
60
66 PvResult WaitComplete();
68 bool IsRunning() const;
69
75 uint32_t GetPriority() const;
76
84 PvResult SetPriority( uint32_t aPriority );
85
91 PvBuffer *RetrieveLatestBuffer();
92
96 void ReleaseLatestBuffer();
97
103 PvBuffer *RetrieveCompressedBuffer();
104
106 void ReleaseCompressedBuffer();
107
112 bool GetKeepPartialImagesEnabled() const;
113
118 void SetKeepPartialImagesEnabled( bool aEnabled );
119
121 bool GetBufferLogErrorEnabled() const;
122
128 void SetBufferLogErrorEnabled( bool aValue );
129
131 bool GetBufferLogAllEnabled() const;
132
138 void SetBufferLogAllEnabled( bool aValue );
139
141 bool GetChunkLogEnabled() const;
142
148 void SetChunkLogEnabled( bool aValue );
149
153 PvDeinterlacingType GetDeinterlacing() const;
154
160 void SetDeinterlacing( PvDeinterlacingType aValue );
161
163 uint32_t GetFPS() const;
164
168 uint32_t GetTargetFPS() const;
169
175 void SetTargetFPS( uint32_t aValue );
176
182 bool GetVSyncEnabled() const;
183
189 void SetVSyncEnabled( bool aEnabled );
190
192 bool GetDisplayChunkDataEnabled() const;
193
199 void SetDisplayChunkDataEnabled( bool aEnabled );
200
202 PvTapGeometryEnum GetTapGeometry() const;
203
209 void SetTapGeometry( PvTapGeometryEnum aGeometry );
210
212 void ResetStatistics();
213
221 virtual PvResult Save( PvPropertyList &aPropertyList );
222
230 virtual PvResult Load( PvPropertyList &aPropertyList );
231
232protected:
233
234 virtual void OnBufferRetrieved( PvBuffer *aBuffer );
235 virtual void OnBufferDisplay( PvBuffer *aBuffer );
236 virtual void OnBufferDone( PvBuffer *aBuffer );
237 virtual void OnBufferLog( const PvString &aLog );
238 virtual void OnBufferTextOverlay( const PvString &aText );
239
240private:
241
242 PvAppUtilsLib::DisplayThread *mThis;
243 friend class PvAppUtilsLib::DisplayThreadProxy;
244
245 // Not implemented
247 const PvDisplayThread &operator=( const PvDisplayThread & );
248};
249
250#endif
PvDeinterlacingType
Definition PvDeinterlacingType.h:12
Tap geometry types definition.
PvTapGeometryEnum
Tap geometry enumeration type.
Definition PvTapGeometry.h:24
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition PvBuffer.h:111
Manages a display thread for rendering buffers and reporting callbacks.
Definition PvDisplayThread.h:30
GenICam feature array.
Definition PvGenParameterArray.h:73
Helper class for receiving data from a GigE Vision or USB3 Vision transmitter.
Definition PvPipeline.h:33
Class used to hold a group of PvProperty objects.
Definition PvPropertyList.h:21
Result information.
Definition PvResult.h:30
String class.
Definition PvString.h:26

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