Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
CCNPPI.h
1#pragma once
2
3#include "Module.h"
4#include "CudaCommon.h"
5
6// dynamic change of image type is not supported for now
7
8class CCNPPIProps : public ModuleProps
9{
10public:
11
12 CCNPPIProps(ImageMetadata::ImageType _imageType, cudastream_sp& _stream)
13 {
14 stream_sp = _stream;
15 stream = _stream->getCudaStream();
16 imageType = _imageType;
17 }
18
19 cudastream_sp stream_sp;
20 cudaStream_t stream;
22};
23
24class CCNPPI : public Module
25{
26
27public:
28 CCNPPI(CCNPPIProps _props);
29 virtual ~CCNPPI();
30 bool init();
31 bool term();
32
33protected:
34 bool process(frame_container& frames);
35 bool processSOS(frame_sp& frame);
36 bool validateInputPins();
37 bool validateOutputPins();
38 void addInputPin(framemetadata_sp& metadata, string& pinId); // throws exception if validation fails
39 bool shouldTriggerSOS();
40 bool processEOS(string& pinId);
41
42private:
43 void setMetadata(framemetadata_sp& metadata);
44
45 class Detail;
46 boost::shared_ptr<Detail> mDetail;
47
52 framemetadata_sp mOutputMetadata;
53 framemetadata_sp mIntermediateMetadata;
54 std::string mOutputPinId;
56};
Definition CCNPPI.h:9
cudastream_sp stream_sp
Definition CCNPPI.h:19
CCNPPIProps(ImageMetadata::ImageType _imageType, cudastream_sp &_stream)
Definition CCNPPI.h:12
cudaStream_t stream
Definition CCNPPI.h:20
ImageMetadata::ImageType imageType
Definition CCNPPI.h:21
Definition CCNPPI.cpp:11
Definition CCNPPI.h:25
bool process(frame_container &frames)
Definition CCNPPI.cpp:1106
framemetadata_sp mOutputMetadata
Definition CCNPPI.h:52
bool shouldTriggerSOS()
Definition CCNPPI.cpp:1223
int mInputFrameType
Definition CCNPPI.h:49
CCNPPI(CCNPPIProps _props)
Definition CCNPPI.cpp:1004
size_t mFrameLength
Definition CCNPPI.h:51
framemetadata_sp mIntermediateMetadata
Definition CCNPPI.h:53
int mOutputFrameType
Definition CCNPPI.h:50
bool mNoChange
Definition CCNPPI.h:48
CCNPPIProps mProps
Definition CCNPPI.h:55
bool term()
Definition CCNPPI.cpp:1101
boost::shared_ptr< Detail > mDetail
Definition CCNPPI.h:46
void addInputPin(framemetadata_sp &metadata, string &pinId)
Definition CCNPPI.cpp:1064
std::string mOutputPinId
Definition CCNPPI.h:54
bool validateInputPins()
Definition CCNPPI.cpp:1011
bool validateOutputPins()
Definition CCNPPI.cpp:1037
bool processSOS(frame_sp &frame)
Definition CCNPPI.cpp:1141
void setMetadata(framemetadata_sp &metadata)
Definition CCNPPI.cpp:1148
bool processEOS(string &pinId)
Definition CCNPPI.cpp:1228
bool init()
Definition CCNPPI.cpp:1091
virtual ~CCNPPI()
Definition CCNPPI.cpp:1009
ImageType
Definition ImageMetadata.h:11
Definition Module.h:33
Definition Module.h:151