Inheritance diagram for WURDEPlaybackCamera:
Definition at line 14 of file PlaybackCamera.H.
Public Member Functions | |
WURDEPlaybackCamera (std::string name, std::map< std::string, std::string > options) | |
bool | init () |
bool | startCapture () |
void | stopCapture () |
WURDE::WURDEImage | captureRGB () |
void | resetFrame () |
Releases the DMA buffer for the current frame, and resets all the boolean values indicating that we have a current frame. | |
void | setDirectory (const std::string &path) |
void | addPattern (const std::string &pat) |
void | captureThread () |
Private Attributes | |
WURDE::DirectoryScanner | m_frameLoader |
std::vector< WURDE::FileEntry > | m_frameList |
std::string | m_path |
WURDE::RunState | thread_state |
bool | m_capturing |
pthread_t | m_captureThread |
WURDE::WURDEImage | m_imageRGB |
bool | m_haveRGB |
IplImage * | buffers [3] |
WURDE::Time | timestamps [3] |
pthread_mutex_t | buffMutex [3] |
IplImage * | currentFrame |
int | currentBuffer |
int | nextFrame |
WURDE::PlaybackTimer | m_timer |
float | m_freq |
float | m_multiplier |
WURDEPlaybackCamera | ( | std::string | name, | |
std::map< std::string, std::string > | options | |||
) |
Definition at line 12 of file PlaybackCamera.cpp.
References WURDEPlaybackCamera::buffers, WURDEPlaybackCamera::buffMutex, WURDEPlaybackCamera::currentBuffer, WURDE::g_logdebug, WURDECamera::m_init, WURDEPlaybackCamera::m_timer, WURDEPlaybackCamera::nextFrame, and Timer::setFrequency().
bool init | ( | ) | [virtual] |
Implements WURDECamera.
Definition at line 31 of file PlaybackCamera.cpp.
References DirectoryScanner::addPattern(), WURDE::g_logdebug, WURDE::g_logerror, WURDE::g_logwarn, DirectoryScanner::getSortedFileList(), WURDEPlaybackCamera::m_frameList, WURDEPlaybackCamera::m_frameLoader, WURDECamera::m_init, WURDECamera::m_options, DirectoryScanner::openDirectory(), and DirectoryScanner::setPath().
Referenced by WURDEPlaybackCamera::startCapture().
bool startCapture | ( | ) | [virtual] |
Implements WURDECamera.
Definition at line 66 of file PlaybackCamera.cpp.
References WURDE::g_logdebug, WURDEPlaybackCamera::init(), WURDEPlaybackCamera::m_captureThread, WURDEPlaybackCamera::m_capturing, WURDEPlaybackCamera::m_frameList, WURDEPlaybackCamera::m_timer, runPlaybackCameraCaptureThread(), PlaybackTimer::setFakeZeroTime(), WURDE::STATE_RUN, WURDEPlaybackCamera::thread_state, and timestamp.
void stopCapture | ( | ) | [virtual] |
Implements WURDECamera.
Definition at line 76 of file PlaybackCamera.cpp.
References WURDEPlaybackCamera::buffers, WURDEPlaybackCamera::currentBuffer, WURDEPlaybackCamera::m_captureThread, WURDEPlaybackCamera::m_capturing, WURDEPlaybackCamera::nextFrame, WURDE::STATE_QUIT, and WURDEPlaybackCamera::thread_state.
WURDEImage captureRGB | ( | ) | [virtual] |
Reimplemented from WURDECamera.
Definition at line 87 of file PlaybackCamera.cpp.
References WURDEPlaybackCamera::buffers, WURDEPlaybackCamera::buffMutex, WURDEPlaybackCamera::currentBuffer, WURDEVision::ERROR_IMAGE_NOT_AVAILABLE, WURDEVision::ERROR_NOERROR, WURDEVision::g_wurdeCamErrno, WURDEPlaybackCamera::m_capturing, WURDEPlaybackCamera::m_haveRGB, WURDEPlaybackCamera::m_imageRGB, and WURDEPlaybackCamera::timestamps.
void resetFrame | ( | ) | [virtual] |
Releases the DMA buffer for the current frame, and resets all the boolean values indicating that we have a current frame.
Implements WURDECamera.
Definition at line 104 of file PlaybackCamera.cpp.
References WURDEPlaybackCamera::buffMutex, WURDEPlaybackCamera::currentBuffer, and WURDEPlaybackCamera::m_haveRGB.
void setDirectory | ( | const std::string & | path | ) | [inline] |
Definition at line 25 of file PlaybackCamera.H.
References WURDEPlaybackCamera::m_frameLoader, WURDEPlaybackCamera::m_path, and DirectoryScanner::setPath().
void addPattern | ( | const std::string & | pat | ) | [inline] |
Definition at line 26 of file PlaybackCamera.H.
References DirectoryScanner::addPattern(), and WURDEPlaybackCamera::m_frameLoader.
void captureThread | ( | ) |
Definition at line 109 of file PlaybackCamera.cpp.
References WURDEPlaybackCamera::buffers, WURDEPlaybackCamera::buffMutex, WURDEPlaybackCamera::currentBuffer, WURDEPlaybackCamera::m_capturing, WURDEPlaybackCamera::m_frameList, WURDEPlaybackCamera::m_timer, WURDEPlaybackCamera::nextFrame, PlaybackTimer::sleep(), WURDE::STATE_RUN, WURDEPlaybackCamera::thread_state, and WURDEPlaybackCamera::timestamps.
Referenced by runPlaybackCameraCaptureThread().
WURDE::DirectoryScanner m_frameLoader [private] |
Definition at line 32 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::addPattern(), WURDEPlaybackCamera::init(), and WURDEPlaybackCamera::setDirectory().
std::vector<WURDE::FileEntry> m_frameList [private] |
Definition at line 33 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::init(), and WURDEPlaybackCamera::startCapture().
std::string m_path [private] |
WURDE::RunState thread_state [private] |
Definition at line 35 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::startCapture(), and WURDEPlaybackCamera::stopCapture().
bool m_capturing [private] |
Definition at line 36 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::startCapture(), and WURDEPlaybackCamera::stopCapture().
pthread_t m_captureThread [private] |
Definition at line 37 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::startCapture(), and WURDEPlaybackCamera::stopCapture().
WURDE::WURDEImage m_imageRGB [private] |
bool m_haveRGB [private] |
Definition at line 40 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), and WURDEPlaybackCamera::resetFrame().
IplImage* buffers[3] [private] |
Definition at line 42 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::stopCapture(), and WURDEPlaybackCamera::WURDEPlaybackCamera().
WURDE::Time timestamps[3] [private] |
Definition at line 43 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), and WURDEPlaybackCamera::captureThread().
pthread_mutex_t buffMutex[3] [private] |
Definition at line 44 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::resetFrame(), and WURDEPlaybackCamera::WURDEPlaybackCamera().
IplImage* currentFrame [private] |
Definition at line 45 of file PlaybackCamera.H.
int currentBuffer [private] |
Definition at line 46 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureRGB(), WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::resetFrame(), WURDEPlaybackCamera::stopCapture(), and WURDEPlaybackCamera::WURDEPlaybackCamera().
int nextFrame [private] |
Definition at line 47 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::stopCapture(), and WURDEPlaybackCamera::WURDEPlaybackCamera().
WURDE::PlaybackTimer m_timer [private] |
Definition at line 49 of file PlaybackCamera.H.
Referenced by WURDEPlaybackCamera::captureThread(), WURDEPlaybackCamera::startCapture(), and WURDEPlaybackCamera::WURDEPlaybackCamera().
float m_freq [private] |
Definition at line 50 of file PlaybackCamera.H.
float m_multiplier [private] |
Definition at line 51 of file PlaybackCamera.H.