NVIDIA DeepStream SDK API Reference
9.1 Release
service-maker/includes/data_receiver.hpp
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: Copyright (c) 2024-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3
* SPDX-License-Identifier: Apache-2.0
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*/
17
23
#ifndef NVIDIA_DEEPSTREAM_DATA_RECEIVER
24
#define NVIDIA_DEEPSTREAM_DATA_RECEIVER
25
26
#include <mutex>
27
28
#include "
signal_handler.hpp
"
29
#include "
buffer.hpp
"
30
31
namespace
deepstream
{
32
42
class
DataReceiver
:
public
SignalHandler
{
43
public
:
50
class
IDataConsumer
{
51
public
:
62
virtual
int
consume
(
DataReceiver
&
receiver
,
Buffer
buffer) = 0;
63
virtual
~IDataConsumer
() {}
64
};
65
74
DataReceiver
(
const
std::string &name, IDataConsumer* consumer,
unsigned
int
retries = 0);
75
85
DataReceiver
(
const
std::string &name,
const
char
* factory, IDataConsumer* consumer,
unsigned
int
retries = 0);
86
88
virtual
~DataReceiver
();
89
97
int
consume
(
Buffer
buffer);
98
99
protected
:
100
std::unique_ptr<IDataConsumer>
data_consumer_
;
101
unsigned
int
retries_
;
102
};
103
}
104
105
#endif
deepstream::DataReceiver::DataReceiver
DataReceiver(const std::string &name, IDataConsumer *consumer, unsigned int retries=0)
Constructor.
deepstream::DataReceiver::IDataConsumer::~IDataConsumer
virtual ~IDataConsumer()
Definition:
service-maker/includes/data_receiver.hpp:63
deepstream::DataReceiver::IDataConsumer
required interface for a data receiver
Definition:
service-maker/includes/data_receiver.hpp:50
deepstream::DataReceiver::IDataConsumer::consume
virtual int consume(DataReceiver &receiver, Buffer buffer)=0
Read a data block.
buffer.hpp
deepstream
Definition:
service-maker/includes/buffer.hpp:38
deepstream::Buffer
Base class of a buffer.
Definition:
service-maker/includes/buffer.hpp:51
deepstream::DataReceiver::data_consumer_
std::unique_ptr< IDataConsumer > data_consumer_
Definition:
service-maker/includes/data_receiver.hpp:100
signal_handler.hpp
deepstream::DataReceiver::retries_
unsigned int retries_
Definition:
service-maker/includes/data_receiver.hpp:101
deepstream::DataReceiver
A specific signal handler for consuming data.
Definition:
service-maker/includes/data_receiver.hpp:42
receiver
static deepstream::Cloud2DeviceReceiver receiver
Definition:
service-maker/sources/modules/smart_recording_action/smart_recording_action.hpp:29
deepstream::SignalHandler
SignalHandler class.
Definition:
service-maker/includes/signal_handler.hpp:45
deepstream::DataReceiver::consume
int consume(Buffer buffer)
Consume a buffer.
deepstream::DataReceiver::~DataReceiver
virtual ~DataReceiver()
Destructor.
Privacy Policy
|
Manage My Privacy
|
Do Not Sell or Share My Data
|
Terms of Service
|
Accessibility
|
Corporate Policies
|
Product Security
|
Contact
© 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
NVIDIA Confidential | Subject to Change | For test and development only.
Thu Jul 9 2026 11:48:18 | PR-09318-R32