src
recorder
recorder/camera.hpp
Go to the documentation of this file.
1
/*
2
* Copyright 2015 Aldebaran
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef CAMERA_RECORDER_HPP
19
#define CAMERA_RECORDER_HPP
20
21
/*
22
* BOOST includes
23
*/
24
#include <boost/circular_buffer.hpp>
25
26
/*
27
* LOCAL includes
28
*/
29
#include <
naoqi_driver/recorder/globalrecorder.hpp
>
30
#include "../helpers/recorder_helpers.hpp"
31
32
/*
33
* ROS includes
34
*/
35
#include <sensor_msgs/CameraInfo.h>
36
#include <sensor_msgs/Image.h>
37
38
namespace
naoqi
39
{
40
namespace
recorder
41
{
42
43
class
CameraRecorder
44
{
45
46
public
:
47
CameraRecorder
(
const
std::string&
topic
,
float
buffer_frequency );
48
49
void
write
(
const
sensor_msgs::ImagePtr& img,
const
sensor_msgs::CameraInfo& camera_info );
50
51
void
reset
(
boost::shared_ptr<naoqi::recorder::GlobalRecorder>
gr,
float
conv_frequency );
52
53
void
bufferize
(
const
sensor_msgs::ImagePtr& img,
const
sensor_msgs::CameraInfo& camera_info );
54
55
void
writeDump
(
const
ros::Time
& time);
56
57
void
setBufferDuration
(
float
duration);
58
59
inline
std::string
topic
()
const
60
{
61
return
topic_img_
;
62
}
63
64
inline
bool
isInitialized
()
const
65
{
66
return
is_initialized_
;
67
}
68
69
inline
void
subscribe
(
bool
state)
70
{
71
is_subscribed_
= state;
72
}
73
74
inline
bool
isSubscribed
()
const
75
{
76
return
is_subscribed_
;
77
}
78
79
protected
:
80
bool
is_initialized_
;
81
bool
is_subscribed_
;
82
83
boost::circular_buffer< std::pair<sensor_msgs::ImagePtr, sensor_msgs::CameraInfo> >
buffer_
;
84
size_t
buffer_size_
;
85
float
buffer_duration_
;
86
87
boost::mutex
mutex_
;
88
89
boost::shared_ptr<naoqi::recorder::GlobalRecorder>
gr_
;
90
std::string
topic_info_
;
91
std::string
topic_img_
;
92
93
float
buffer_frequency_
;
94
float
conv_frequency_
;
95
int
counter_
;
96
int
max_counter_
;
97
98
};
// class
99
100
}
//publisher
101
}
// naoqi
102
103
#endif
naoqi::recorder::CameraRecorder
Definition:
recorder/camera.hpp:43
naoqi::recorder::CameraRecorder::topic_img_
std::string topic_img_
Definition:
recorder/camera.hpp:91
boost::shared_ptr< naoqi::recorder::GlobalRecorder >
naoqi::recorder::CameraRecorder::bufferize
void bufferize(const sensor_msgs::ImagePtr &img, const sensor_msgs::CameraInfo &camera_info)
Definition:
recorder/camera.cpp:76
naoqi::recorder::CameraRecorder::mutex_
boost::mutex mutex_
Definition:
recorder/camera.hpp:87
naoqi::recorder::CameraRecorder::setBufferDuration
void setBufferDuration(float duration)
Definition:
recorder/camera.cpp:90
naoqi::recorder::CameraRecorder::topic_info_
std::string topic_info_
Definition:
recorder/camera.hpp:90
naoqi::recorder::CameraRecorder::buffer_frequency_
float buffer_frequency_
Definition:
recorder/camera.hpp:93
naoqi
Definition:
converter.hpp:29
naoqi::recorder::CameraRecorder::buffer_
boost::circular_buffer< std::pair< sensor_msgs::ImagePtr, sensor_msgs::CameraInfo > > buffer_
Definition:
recorder/camera.hpp:83
naoqi::recorder::CameraRecorder::writeDump
void writeDump(const ros::Time &time)
Definition:
recorder/camera.cpp:53
naoqi::recorder::CameraRecorder::topic
std::string topic() const
Definition:
recorder/camera.hpp:59
naoqi::recorder::CameraRecorder::max_counter_
int max_counter_
Definition:
recorder/camera.hpp:96
naoqi::recorder::CameraRecorder::gr_
boost::shared_ptr< naoqi::recorder::GlobalRecorder > gr_
Definition:
recorder/camera.hpp:89
naoqi::recorder::CameraRecorder::isInitialized
bool isInitialized() const
Definition:
recorder/camera.hpp:64
naoqi::recorder::CameraRecorder::subscribe
void subscribe(bool state)
Definition:
recorder/camera.hpp:69
naoqi::recorder::CameraRecorder::buffer_duration_
float buffer_duration_
Definition:
recorder/camera.hpp:85
naoqi::recorder::CameraRecorder::isSubscribed
bool isSubscribed() const
Definition:
recorder/camera.hpp:74
naoqi::recorder::CameraRecorder::CameraRecorder
CameraRecorder(const std::string &topic, float buffer_frequency)
Definition:
recorder/camera.cpp:28
naoqi::recorder::CameraRecorder::is_subscribed_
bool is_subscribed_
Definition:
recorder/camera.hpp:81
naoqi::recorder::CameraRecorder::buffer_size_
size_t buffer_size_
Definition:
recorder/camera.hpp:84
ros::Time
globalrecorder.hpp
naoqi::recorder::CameraRecorder::conv_frequency_
float conv_frequency_
Definition:
recorder/camera.hpp:94
naoqi::recorder::CameraRecorder::is_initialized_
bool is_initialized_
Definition:
recorder/camera.hpp:80
naoqi::recorder::CameraRecorder::counter_
int counter_
Definition:
recorder/camera.hpp:95
naoqi::recorder::CameraRecorder::reset
void reset(boost::shared_ptr< naoqi::recorder::GlobalRecorder > gr, float conv_frequency)
Definition:
recorder/camera.cpp:66
naoqi::recorder::CameraRecorder::write
void write(const sensor_msgs::ImagePtr &img, const sensor_msgs::CameraInfo &camera_info)
Definition:
recorder/camera.cpp:37
naoqi_driver
Author(s): Karsten Knese
autogenerated on Sat Feb 3 2024 03:50:06