#include <prosilica.h>
Public Member Functions | |
Camera (unsigned long guid, size_t bufferSize=DEFAULT_BUFFER_SIZE) | |
Camera (const char *ip_address, size_t bufferSize=DEFAULT_BUFFER_SIZE) | |
void | getAttribute (const std::string &name, tPvUint32 &value) |
void | getAttribute (const std::string &name, tPvFloat32 &value) |
void | getAttribute (const std::string &name, std::string &value) |
void | getAttributeEnum (const std::string &name, std::string &value) |
General get/set attribute functions. | |
unsigned long | getMaxDataRate () |
tPvFrame * | grab (unsigned long timeout_ms=PVINFINITE) |
unsigned long | guid () |
tPvHandle | handle () |
Get raw PvApi camera handle. | |
bool | hasAttribute (const std::string &name) |
Returns true if camera supports the attribute. | |
void | readUserMemory (char *data, size_t size) |
void | removeEvents () |
remove callback | |
void | runCommand (const std::string &name) |
void | setAttribute (const std::string &name, tPvUint32 value) |
void | setAttribute (const std::string &name, tPvFloat32 value) |
void | setAttribute (const std::string &name, const std::string &value) |
void | setAttributeEnum (const std::string &name, const std::string &value) |
void | setBinning (unsigned int binning_x=1, unsigned int binning_y=1) |
void | setExposure (unsigned int val, AutoSetting isauto=Manual) |
void | setFrameCallback (boost::function< void(tPvFrame *)> callback) |
Must be used before calling start() in a non-triggered mode. | |
void | setFrameRate (tPvFloat32 frame_rate) |
void | setGain (unsigned int val, AutoSetting isauto=Manual) |
void | setKillCallback (boost::function< void(unsigned long)> callback) |
void | setRoi (unsigned int x, unsigned int y, unsigned int width, unsigned int height) |
void | setRoiToWholeFrame () |
void | setWhiteBalance (unsigned int blue, unsigned int red, AutoSetting isauto=Manual) |
void | start (FrameStartTriggerMode=Freerun, tPvFloat32 frame_rate=30, AcquisitionMode=Continuous) |
Start capture. | |
void | stop () |
Stop capture. | |
void | writeUserMemory (const char *data, size_t size) |
~Camera () | |
Static Public Attributes | |
static const size_t | DEFAULT_BUFFER_SIZE = 4 |
static const unsigned long | GIGE_MAX_DATA_RATE = 115000000 |
static const size_t | USER_MEMORY_SIZE = 512 |
Data must have size <= USER_MEMORY_SIZE bytes. | |
Private Member Functions | |
void | setup () |
Static Private Member Functions | |
static void | frameDone (tPvFrame *frame) |
static void | kill (void *Context, tPvInterface Interface, tPvLinkEvent Event, unsigned long UniqueId) |
Private Attributes | |
boost::mutex | aliveMutex_ |
AcquisitionMode | Amode_ |
size_t | bufferIndex_ |
size_t | bufferSize_ |
boost::mutex | frameMutex_ |
tPvFrame * | frames_ |
tPvUint32 | frameSize_ |
FrameStartTriggerMode | FSTmode_ |
tPvHandle | handle_ |
boost::function< void(unsigned long UniqueId)> | killCallback_ |
boost::function< void(tPvFrame *) | userCallback_ ) |
Definition at line 114 of file prosilica.h.
prosilica::Camera::Camera | ( | unsigned long | guid, |
size_t | bufferSize = DEFAULT_BUFFER_SIZE |
||
) |
Definition at line 175 of file prosilica.cpp.
prosilica::Camera::Camera | ( | const char * | ip_address, |
size_t | bufferSize = DEFAULT_BUFFER_SIZE |
||
) |
Definition at line 184 of file prosilica.cpp.
Definition at line 231 of file prosilica.cpp.
void prosilica::Camera::frameDone | ( | tPvFrame * | frame | ) | [static, private] |
Definition at line 562 of file prosilica.cpp.
void prosilica::Camera::getAttribute | ( | const std::string & | name, |
tPvUint32 & | value | ||
) |
Definition at line 465 of file prosilica.cpp.
void prosilica::Camera::getAttribute | ( | const std::string & | name, |
tPvFloat32 & | value | ||
) |
Definition at line 473 of file prosilica.cpp.
void prosilica::Camera::getAttribute | ( | const std::string & | name, |
std::string & | value | ||
) |
Definition at line 480 of file prosilica.cpp.
void prosilica::Camera::getAttributeEnum | ( | const std::string & | name, |
std::string & | value | ||
) |
General get/set attribute functions.
Definition at line 459 of file prosilica.cpp.
unsigned long prosilica::Camera::getMaxDataRate | ( | ) |
Definition at line 528 of file prosilica.cpp.
tPvFrame * prosilica::Camera::grab | ( | unsigned long | timeout_ms = PVINFINITE | ) |
Capture a single frame from the camera. Must be called after start(Software Triggered).
recommanding after an error seems to cause a sequence error if next command is too fast
Definition at line 319 of file prosilica.cpp.
unsigned long prosilica::Camera::guid | ( | ) |
Definition at line 520 of file prosilica.cpp.
Get raw PvApi camera handle.
Definition at line 594 of file prosilica.cpp.
bool prosilica::Camera::hasAttribute | ( | const std::string & | name | ) |
Returns true if camera supports the attribute.
Definition at line 437 of file prosilica.cpp.
void prosilica::Camera::kill | ( | void * | Context, |
tPvInterface | Interface, | ||
tPvLinkEvent | Event, | ||
unsigned long | UniqueId | ||
) | [static, private] |
Definition at line 581 of file prosilica.cpp.
void prosilica::Camera::readUserMemory | ( | char * | data, |
size_t | size | ||
) |
Definition at line 550 of file prosilica.cpp.
void prosilica::Camera::removeEvents | ( | ) |
remove callback
Definition at line 313 of file prosilica.cpp.
void prosilica::Camera::runCommand | ( | const std::string & | name | ) |
Definition at line 514 of file prosilica.cpp.
void prosilica::Camera::setAttribute | ( | const std::string & | name, |
tPvUint32 | value | ||
) |
Definition at line 493 of file prosilica.cpp.
void prosilica::Camera::setAttribute | ( | const std::string & | name, |
tPvFloat32 | value | ||
) |
Definition at line 500 of file prosilica.cpp.
void prosilica::Camera::setAttribute | ( | const std::string & | name, |
const std::string & | value | ||
) |
Definition at line 507 of file prosilica.cpp.
void prosilica::Camera::setAttributeEnum | ( | const std::string & | name, |
const std::string & | value | ||
) |
Definition at line 486 of file prosilica.cpp.
void prosilica::Camera::setBinning | ( | unsigned int | binning_x = 1 , |
unsigned int | binning_y = 1 |
||
) |
Definition at line 425 of file prosilica.cpp.
void prosilica::Camera::setExposure | ( | unsigned int | val, |
AutoSetting | isauto = Manual |
||
) |
Definition at line 347 of file prosilica.cpp.
void prosilica::Camera::setFrameCallback | ( | boost::function< void(tPvFrame *)> | callback | ) |
Must be used before calling start() in a non-triggered mode.
Definition at line 246 of file prosilica.cpp.
void prosilica::Camera::setFrameRate | ( | tPvFloat32 | frame_rate | ) |
Definition at line 250 of file prosilica.cpp.
void prosilica::Camera::setGain | ( | unsigned int | val, |
AutoSetting | isauto = Manual |
||
) |
Definition at line 357 of file prosilica.cpp.
void prosilica::Camera::setKillCallback | ( | boost::function< void(unsigned long)> | callback | ) |
Definition at line 255 of file prosilica.cpp.
void prosilica::Camera::setRoi | ( | unsigned int | x, |
unsigned int | y, | ||
unsigned int | width, | ||
unsigned int | height | ||
) |
Definition at line 395 of file prosilica.cpp.
Definition at line 408 of file prosilica.cpp.
void prosilica::Camera::setup | ( | ) | [private] |
Definition at line 195 of file prosilica.cpp.
void prosilica::Camera::setWhiteBalance | ( | unsigned int | blue, |
unsigned int | red, | ||
AutoSetting | isauto = Manual |
||
) |
Definition at line 372 of file prosilica.cpp.
void prosilica::Camera::start | ( | FrameStartTriggerMode | fmode = Freerun , |
tPvFloat32 | frame_rate = 30 , |
||
AcquisitionMode | amode = Continuous |
||
) |
Start capture.
Definition at line 260 of file prosilica.cpp.
void prosilica::Camera::stop | ( | ) |
Stop capture.
Definition at line 302 of file prosilica.cpp.
void prosilica::Camera::writeUserMemory | ( | const char * | data, |
size_t | size | ||
) |
Definition at line 538 of file prosilica.cpp.
boost::mutex prosilica::Camera::aliveMutex_ [private] |
Definition at line 188 of file prosilica.h.
AcquisitionMode prosilica::Camera::Amode_ [private] |
Definition at line 184 of file prosilica.h.
size_t prosilica::Camera::bufferIndex_ [private] |
Definition at line 189 of file prosilica.h.
size_t prosilica::Camera::bufferSize_ [private] |
Definition at line 182 of file prosilica.h.
const size_t prosilica::Camera::DEFAULT_BUFFER_SIZE = 4 [static] |
Definition at line 117 of file prosilica.h.
boost::mutex prosilica::Camera::frameMutex_ [private] |
Definition at line 187 of file prosilica.h.
tPvFrame* prosilica::Camera::frames_ [private] |
Definition at line 180 of file prosilica.h.
tPvUint32 prosilica::Camera::frameSize_ [private] |
Definition at line 181 of file prosilica.h.
Definition at line 183 of file prosilica.h.
const unsigned long prosilica::Camera::GIGE_MAX_DATA_RATE = 115000000 [static] |
Definition at line 168 of file prosilica.h.
tPvHandle prosilica::Camera::handle_ [private] |
Definition at line 179 of file prosilica.h.
boost::function<void (unsigned long UniqueId)> prosilica::Camera::killCallback_ [private] |
Definition at line 186 of file prosilica.h.
const size_t prosilica::Camera::USER_MEMORY_SIZE = 512 [static] |
Data must have size <= USER_MEMORY_SIZE bytes.
Definition at line 171 of file prosilica.h.
boost::function<void (tPvFrame*) prosilica::Camera::userCallback_) [private] |
Definition at line 185 of file prosilica.h.