|
ICLIO_API | PylonGrabber (const Pylon::CDeviceInfo &dev, const std::string args) |
| The constructor. More...
|
|
ICLIO_API | ~PylonGrabber () |
| Destructor. More...
|
|
virtual ICLIO_API const core::ImgBase * | acquireImage () |
| grab function grabs an image (destination image is adapted on demand) More...
|
|
| Grabber () |
|
virtual | ~Grabber () |
| Destructor. More...
|
|
const core::ImgBase * | grab (core::ImgBase **dst=0) |
| grab function calls the Grabber-specific acquireImage-method and applies distortion if necessary More...
|
|
template<class T > |
bool | desiredUsed () const |
| returns whether the desired parameter for the given type is used More...
|
|
template<class T > |
void | useDesired (const T &t) |
| sets desired parameters (only available for core::depth,utils::Size and core::format) More...
|
|
void | useDesired (core::depth d, const utils::Size &size, core::format fmt) |
| sets up the grabber to use all given desired parameters More...
|
|
template<class T > |
void | ignoreDesired () |
| set the grabber to ignore the desired param of type T More...
|
|
void | ignoreDesired () |
| sets up the grabber to ignore all desired parameters More...
|
|
template<class T > |
T | getDesired () const |
| returns the desired value for the given type T More...
|
|
virtual void | registerCallback (callback cb) |
| registers a callback that is called each time, a new image is available More...
|
|
virtual void | removeAllCallbacks () |
| removes all registered image callbacks More...
|
|
virtual void | notifyNewImageAvailable (const core::ImgBase *image) |
| this function can be implemented by subclasses in order to notify, that a new image is available More...
|
|
void | enableUndistortion (const std::string &filename) |
| enables the undistorion More...
|
|
void | enableUndistortion (const ImageUndistortion &udist) |
| enables the undistortion plugin for the grabber using radial and tangential distortion parameters More...
|
|
void | enableUndistortion (const utils::ProgArg &pa) |
| enables undistortion from given programm argument. More...
|
|
void | enableUndistortion (const core::Img32f &warpMap) |
| enables undistortion for given warp map More...
|
|
void | setUndistortionInterpolationMode (core::scalemode mode) |
| sets how undistortion is interpolated (supported modes are interpolateNN and interpolateLIN) More...
|
|
void | disableUndistortion () |
| disables distortion More...
|
|
bool | isUndistortionEnabled () const |
| returns whether distortion is currently enabled More...
|
|
const core::Img32f * | getUndistortionWarpMap () const |
| returns the internal warp map or NULL if undistortion is not enabled More...
|
|
virtual | ~Configurable () |
| virtual destructor More...
|
|
| Configurable (const Configurable &other) |
| Copy constructor. More...
|
|
Configurable & | operator= (const Configurable &other) |
| Assignment operator. More...
|
|
void | setConfigurableID (const std::string &ID) |
| sets the ID of this configurable More...
|
|
const std::string & | getConfigurableID () const |
| returns the configurables static ID More...
|
|
bool | isOrderedFlagSet () const |
| returns whether the ordered flag is set More...
|
|
void | deactivateProperty (const std::string &pattern) |
| adds an additional deativation pattern More...
|
|
void | deleteDeactivationPattern (const std::string &pattern) |
| removed a formerly added deactivation pattern More...
|
|
std::vector< std::string > | getPropertyListWithoutDeactivated () const |
| this returns a filtered list of properties (using all filters added by deactivateProperty) More...
|
|
virtual void | adaptProperty (const std::string &name, const std::string &newType, const std::string &newInfo, const std::string &newToolTip) |
| this function can be used to adapt a specific property afterwards More...
|
|
void | registerCallback (const Callback &cb) |
| add a callback for changed properties More...
|
|
void | removedCallback (const Callback &cb) |
| removes a callback that was registered before More...
|
|
void | syncChangesTo (Configurable *others, int num=1) |
| this can be used to let this instance also apply property changes to others More...
|
|
virtual void | setPropertyValue (const std::string &propertyName, const Any &value) |
| sets a property value More...
|
|
virtual std::vector< std::string > | getPropertyList () const |
| returns a list of All properties, that can be set using setProperty More...
|
|
virtual bool | supportsProperty (const std::string &propertyName) const |
| base implementation for property check (seaches in the property list) More...
|
|
virtual void | saveProperties (const std::string &filename, const std::vector< std::string > &propertiesToSkip=EMPTY_VEC) const |
| writes all available properties into a file More...
|
|
virtual void | loadProperties (const std::string &filename, const std::vector< std::string > &propertiesToSkip=EMPTY_VEC) |
| reads a camera config file from disc More...
|
|
virtual std::string | getPropertyType (const std::string &propertyName) const |
| get type of property More...
|
|
virtual std::string | getPropertyInfo (const std::string &propertyName) const |
| get information of a properties valid values More...
|
|
virtual Any | getPropertyValue (const std::string &propertyName) const |
| returns the current value of a property or a parameter More...
|
|
virtual std::string | getPropertyToolTip (const std::string &propertyName) const |
| returns the tooltip description for a given property More...
|
|
virtual int | getPropertyVolatileness (const std::string &propertyName) const |
| Returns whether this property may be changed internally. More...
|
|
virtual | ~Interruptable () |
| Virtual destructor. More...
|
|
|
typedef utils::Function< void, const core::ImgBase * > | callback |
| new image callback type More...
|
|
typedef Function< void, const Property & > | Callback |
| Function type for changed properties. More...
|
|
static const std::vector< std::string > | EMPTY_VEC |
| used as shortcut – just an empty vector of std::strings More...
|
|
virtual void | setDesiredFormatInternal (core::format fmt) |
| internally set a desired format More...
|
|
virtual void | setDesiredSizeInternal (const utils::Size &size) |
| internally set a desired format More...
|
|
virtual void | setDesiredDepthInternal (core::depth d) |
| internally set a desired format More...
|
|
virtual core::format | getDesiredFormatInternal () const |
| returns the desired format More...
|
|
virtual core::depth | getDesiredDepthInternal () const |
| returns the desired format More...
|
|
virtual utils::Size | getDesiredSizeInternal () const |
| returns the desired format More...
|
|
const core::ImgBase * | adaptGrabResult (const core::ImgBase *src, core::ImgBase **dst) |
| Utility function that allows for much easier implementation of grabUD. More...
|
|
| Uncopyable () |
| Empty base constructor. More...
|
|
void | addProperty (const std::string &name, const std::string &type, const std::string &info, const Any &value=Any(), const int volatileness=0, const std::string &tooltip=std::string()) |
| This can be used by derived classes to store supported properties in the internal list. More...
|
|
void | addChildConfigurable (Configurable *configurable, const std::string &childPrefix="") |
| This adds another configurable as child. More...
|
|
void | removeChildConfigurable (Configurable *configurable) |
| removes the given child configurable More...
|
|
Property & | prop (const std::string &propertyName) |
| this CAN be used e.g. to store a property value in internal property-list More...
|
|
const Property & | prop (const std::string &propertyName) const |
| this CAN be used e.g. to store a property value in internal property-list More...
|
|
| Configurable (const std::string &ID="", bool ordered=true) |
| create this configurable with given ID More...
|
|
void | call_callbacks (const std::string &propertyName, const Configurable *caller) const |
| calls all registered callbacks More...
|
|
std::vector< Callback > | callbacks |
| internally managed list of callbacks More...
|
|
Grabber implementation for a Basler Pylon-based GIG-E Grabber.
This is just a wrapper class of the underlying PylonGrabberImpl class
Some useful hints to increase GigE camera output:
- Jumbo Frames: If your Network Adapter supports Jumbo Frames they should be enabled by setting the Maximum Transfer Unit (MTU) size to 8192. Accordingly the cameras property "GevSCPSPacketSize" is set to 8192 per default. Setting this property to a value higher then the Network Adapters MTU may create transfer errors.
- Real-time thread priorities: To minimize network packet losses it helps to grant pylon the permission to change a threads priority to real time. This can be achieved by adding the line: to
/etc/security/limits.conf
This can make the difference between a network throughput of 32 and 100Mb/s.
- Transmission errors: If you often get the error code 'GX status 0xe1000014' and already followed the previous hints increasing the 'GevSCPD' (Inter packet delay) parameter can help to minimize these transmission errors.
- Camera IP Configuration: can be made with the IpConfigurator which is included in the Pylon driver package. When the tool does not find the camera, ICL will neither. This most commonly means that the camera is in an other ip-address block then the computer. Because a connection to the camera is needed in order to change the cameras ip settings, it is possible to either chnage the ip address of the computer to the same ip-address block or to use the Windows version of the IpConfigurator - which does not seem to have souch problems - to change the cameras ip settings once.
- Network Adapter: Basler is recommending Network Adapters of the Intel PRO 1000 series. They observed a significantly higher CPU load when working with other.