POutputVideoStream.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015-2018 Digital Barriers plc. All rights reserved.
3  * Contact: http://www.digitalbarriers.com/
4  *
5  * This file is part of the Papillon SDK.
6  *
7  * You can't use, modify or distribute any part of this file without
8  * the explicit written agreements of Digital Barriers.
9  */
10 
17 #pragma once
18 #include <PPluginInstance.h>
19 
20 PAPILLON_BEGIN_NAMESPACE
21 
22 class PFrame;
23 class PPlugin;
24 class PUri;
25 
33 class PAPILLON_API_CORE POutputVideoStream : public PPluginInstance
34 {
35 public:
36 
49  static PResult Open(const PString& uri, POutputVideoStream& outputVideoStream);
50 
63  static PResult Open(const PPlugin& plugin, const PUri& uri, POutputVideoStream& outputVideoStream);
64 
73 
78 
84  virtual ~POutputVideoStream();
85 
90 
94  bool IsEmpty() const;
95 
100  bool IsOpened() const;
101 
108  PResult OpenVideoStream();
109 
116  PResult Close();
117 
121  PUri GetUri() const;
122 
128  PResult PutFrame(const PFrame& frame, papillon::int32 timeOutMs = 10000) const;
129 
130 };
131 
132 PAPILLON_END_NAMESPACE
The PUri class represents an Unified Resource Identifier (URI), this class can also be used to handle...
Definition: PUri.h:43
PPluginInstance & operator=(const PPluginInstance &other)
Performs a shared copy of other to this object.
The PString class provides an Unicode character strings.
Definition: PString.h:37
The PFrame class represents any 2D-image (RGB, gray-scale, ...) with a container of additional data p...
Definition: PFrame.h:50
The PResult class represents the result returned by most of Papillon functions; this class is used to...
Definition: PResult.h:159
The PPlugin class represents a Papillon plugin (input video source, detector, describer, ...); thread-safe.
Definition: PPlugin.h:45
The POutputVideoStream class represents an output video streams like a video file, a network socket or simply a screen display.
Class PPluginInstance: super class for PAnalytics, PDetector, PDescriber, etc.
The PPluginInstance class is the super class for PAnalytics, PDetector, PDescriber which handle the d...