Public Member Functions | Private Member Functions | Private Attributes | List of all members
naoqi::AudioEventRegister Class Reference

GlobalRecorder concept interface. More...

#include <audio.hpp>

Inheritance diagram for naoqi::AudioEventRegister:
Inheritance graph
[legend]

Public Member Functions

 AudioEventRegister (const std::string &name, const float &frequency, const qi::SessionPtr &session)
 Constructor for recorder interface. More...
 
void isDumping (bool state)
 
void isPublishing (bool state)
 
void isRecording (bool state)
 
void processRemote (int nbOfChannels, int samplesByChannel, qi::AnyValue altimestamp, qi::AnyValue buffer)
 
void resetPublisher (ros::NodeHandle &nh)
 
void resetRecorder (boost::shared_ptr< naoqi::recorder::GlobalRecorder > gr)
 
void setBufferDuration (float duration)
 
void startProcess ()
 
void stopProcess ()
 
void writeDump (const ros::Time &time)
 
 ~AudioEventRegister ()
 

Private Member Functions

void onEvent ()
 
void registerCallback ()
 
void unregisterCallback ()
 

Private Attributes

std::vector< uint8_t > channelMap
 
boost::shared_ptr< converter::AudioEventConverterconverter_
 
bool isDumping_
 
bool isPublishing_
 
bool isRecording_
 
bool isStarted_
 
const robot::NaoqiVersionnaoqi_version_
 
qi::AnyObject p_audio_
 
qi::FutureSync< qi::AnyObject > p_audio_extractor_request
 
qi::AnyObject p_robot_model_
 
boost::mutex processing_mutex_
 
boost::shared_ptr< publisher::BasicPublisher< naoqi_bridge_msgs::AudioBuffer > > publisher_
 
boost::shared_ptr< recorder::BasicEventRecorder< naoqi_bridge_msgs::AudioBuffer > > recorder_
 
unsigned int serviceId
 
qi::SessionPtr session_
 
boost::mutex subscription_mutex_
 

Detailed Description

GlobalRecorder concept interface.

Note
this defines an private concept struct, which each instance has to implement
a type erasure pattern in implemented here to avoid strict inheritance, thus each possible publisher instance has to implement the virtual functions mentioned in the concept

Definition at line 53 of file event/audio.hpp.

Constructor & Destructor Documentation

◆ AudioEventRegister()

naoqi::AudioEventRegister::AudioEventRegister ( const std::string &  name,
const float &  frequency,
const qi::SessionPtr &  session 
)

Constructor for recorder interface.

Definition at line 35 of file event/audio.cpp.

◆ ~AudioEventRegister()

naoqi::AudioEventRegister::~AudioEventRegister ( )

Definition at line 84 of file event/audio.cpp.

Member Function Documentation

◆ isDumping()

void naoqi::AudioEventRegister::isDumping ( bool  state)

Definition at line 161 of file event/audio.cpp.

◆ isPublishing()

void naoqi::AudioEventRegister::isPublishing ( bool  state)

Definition at line 155 of file event/audio.cpp.

◆ isRecording()

void naoqi::AudioEventRegister::isRecording ( bool  state)

Definition at line 149 of file event/audio.cpp.

◆ onEvent()

void naoqi::AudioEventRegister::onEvent ( )
private

◆ processRemote()

void naoqi::AudioEventRegister::processRemote ( int  nbOfChannels,
int  samplesByChannel,
qi::AnyValue  altimestamp,
qi::AnyValue  buffer 
)

Definition at line 175 of file event/audio.cpp.

◆ registerCallback()

void naoqi::AudioEventRegister::registerCallback ( )
private

Definition at line 167 of file event/audio.cpp.

◆ resetPublisher()

void naoqi::AudioEventRegister::resetPublisher ( ros::NodeHandle nh)

Definition at line 89 of file event/audio.cpp.

◆ resetRecorder()

void naoqi::AudioEventRegister::resetRecorder ( boost::shared_ptr< naoqi::recorder::GlobalRecorder gr)

Definition at line 94 of file event/audio.cpp.

◆ setBufferDuration()

void naoqi::AudioEventRegister::setBufferDuration ( float  duration)

Definition at line 144 of file event/audio.cpp.

◆ startProcess()

void naoqi::AudioEventRegister::startProcess ( )

Definition at line 99 of file event/audio.cpp.

◆ stopProcess()

void naoqi::AudioEventRegister::stopProcess ( )

Definition at line 121 of file event/audio.cpp.

◆ unregisterCallback()

void naoqi::AudioEventRegister::unregisterCallback ( )
private

Definition at line 171 of file event/audio.cpp.

◆ writeDump()

void naoqi::AudioEventRegister::writeDump ( const ros::Time time)

Definition at line 136 of file event/audio.cpp.

Member Data Documentation

◆ channelMap

std::vector<uint8_t> naoqi::AudioEventRegister::channelMap
private

Definition at line 93 of file event/audio.hpp.

◆ converter_

boost::shared_ptr<converter::AudioEventConverter> naoqi::AudioEventRegister::converter_
private

Definition at line 85 of file event/audio.hpp.

◆ isDumping_

bool naoqi::AudioEventRegister::isDumping_
private

Definition at line 103 of file event/audio.hpp.

◆ isPublishing_

bool naoqi::AudioEventRegister::isPublishing_
private

Definition at line 101 of file event/audio.hpp.

◆ isRecording_

bool naoqi::AudioEventRegister::isRecording_
private

Definition at line 102 of file event/audio.hpp.

◆ isStarted_

bool naoqi::AudioEventRegister::isStarted_
private

Definition at line 100 of file event/audio.hpp.

◆ naoqi_version_

const robot::NaoqiVersion& naoqi::AudioEventRegister::naoqi_version_
private

Definition at line 95 of file event/audio.hpp.

◆ p_audio_

qi::AnyObject naoqi::AudioEventRegister::p_audio_
private

Definition at line 90 of file event/audio.hpp.

◆ p_audio_extractor_request

qi::FutureSync<qi::AnyObject> naoqi::AudioEventRegister::p_audio_extractor_request
private

Definition at line 92 of file event/audio.hpp.

◆ p_robot_model_

qi::AnyObject naoqi::AudioEventRegister::p_robot_model_
private

Definition at line 91 of file event/audio.hpp.

◆ processing_mutex_

boost::mutex naoqi::AudioEventRegister::processing_mutex_
private

Definition at line 98 of file event/audio.hpp.

◆ publisher_

boost::shared_ptr<publisher::BasicPublisher<naoqi_bridge_msgs::AudioBuffer> > naoqi::AudioEventRegister::publisher_
private

Definition at line 86 of file event/audio.hpp.

◆ recorder_

boost::shared_ptr<recorder::BasicEventRecorder<naoqi_bridge_msgs::AudioBuffer> > naoqi::AudioEventRegister::recorder_
private

Definition at line 87 of file event/audio.hpp.

◆ serviceId

unsigned int naoqi::AudioEventRegister::serviceId
private

Definition at line 94 of file event/audio.hpp.

◆ session_

qi::SessionPtr naoqi::AudioEventRegister::session_
private

Definition at line 89 of file event/audio.hpp.

◆ subscription_mutex_

boost::mutex naoqi::AudioEventRegister::subscription_mutex_
private

Definition at line 97 of file event/audio.hpp.


The documentation for this class was generated from the following files:


naoqi_driver
Author(s): Karsten Knese
autogenerated on Sat Feb 3 2024 03:50:06