ifm3d
ifm3d::O3C Class Reference

Device specialization for O3C. More...

#include <ifm3d/device/o3c.h>

Public Types

using Ptr = std::shared_ptr< O3C >
 
using SetTemporaryApplicationParameter = O3R::SetTemporaryApplicationParameter
 
- Public Types inherited from ifm3d::O3R
using Ptr = std::shared_ptr< O3R >
 
- Public Types inherited from ifm3d::Device
enum class  BootMode : int { PRODUCTIVE = 0 , RECOVERY = 1 }
 Device boot up modes: More...
 
enum class  OperatingMode : int { RUN = 0 , EDIT = 1 }
 Device operating modes: run (streaming pixel data), edit (configuring the device/applications).
 
enum class  TriggerMode : int { FREE_RUN = 1 , SW = 2 }
 Image acquisition trigger modes.
 
enum class  ImportFlags : int { GLOBAL = 0x1 , NET = 0x2 , APPS = 0x10 }
 Import flags used when importing a Vision Assistant configuration.
 
enum class  SpatialFilter : int { OFF = 0x0 , MEDIAN = 0x1 , MEAN = 0x2 , BILATERAL = 0x3 }
 Convenience constants for spatial filter types.
 
enum class  TemporalFilter : int { OFF = 0x0 , MEAN = 0x1 , ADAPTIVE_EXP = 0x2 }
 Convenience constants for temporal filter types.
 
enum class  MedianfilterMaskSize : int { _3x3 = 0 , _5x5 = 1 }
 Convenient constants for median filter mask sizes.
 
enum class  DeviceFamily : int {
  UNKNOWN = 0 , O3D = 1 , O3X = 2 , O3R = 3 ,
  O3C = 4
}
 
enum class  SWUVersion : int { SWU_NOT_SUPPORTED = 0 , SWU_V1 = 1 , SWU_V2 = 2 }
 
using Ptr = std::shared_ptr< Device >
 

Public Member Functions

 O3C (const std::string &ip=ifm3d::DEFAULT_IP, std::uint16_t xmlrpc_port=ifm3d::DEFAULT_XMLRPC_PORT)
 
 O3C (O3C &&)=delete
 
O3Coperator= (O3C &&)=delete
 
 O3C (O3C &)=delete
 
O3Coperator= (O3C &)=delete
 
DeviceFamily WhoAmI () override
 This function can be used to retrieve the family of the connected device. More...
 
ifm3d::Device::SWUVersion SwUpdateVersion () override
 Checks the swupdater version supported by device. More...
 
- Public Member Functions inherited from ifm3d::O3R
 O3R (const std::string &ip=ifm3d::DEFAULT_IP, std::uint16_t xmlrpc_port=ifm3d::DEFAULT_XMLRPC_PORT)
 
 O3R (O3R &&)=delete
 
O3Roperator= (O3R &&)=delete
 
 O3R (O3R &)=delete
 
O3Roperator= (O3R &)=delete
 
virtual void FactoryReset (bool keep_network_settings)
 Sets the device configuration back to the state in which it shipped from the ifm factory. More...
 
json GetSchema ()
 Return the current JSON schema configuration. More...
 
json GetSchema (std::variant< std::monostate, std::string, std::vector< std::string >> pointers)
 Returns the current JSON schema configuration or a subset of it. More...
 
json GetSchema (std::initializer_list< std::string > pointers)
 Returns the current JSON schema configuration or a subset of it. More...
 
json Get (const std::vector< std::string > &path=std::vector< std::string >())
 Returns the configuration formatted as JSON based on a path. More...
 
json ResolveConfig (const json::json_pointer &ptr)
 Returns a part of the configuration formatted as JSON based on a JSON pointer. More...
 
void Set (const json &j)
 Overwrites parts of the temporary JSON configuration which is achieved by merging the provided JSON fragment with the current temporary JSON. More...
 
void Remove (const std::string &json_pointer)
 Removes an object from the JSON. More...
 
void Reset (const std::string &json_pointer)
 Sets the default value of an object inside the JSON. More...
 
json GetInit ()
 Return the initial JSON configuration. More...
 
void SaveInit (const std::vector< std::string > &pointers={})
 Save to current temporary JSON configuration as initial JSON configuration, so it will be applied with the next transition to the INIT state (system boot up) More...
 
std::vector< PortInfoPorts ()
 Returns a list containing information about all connected physical and application ports. More...
 
PortInfo Port (const std::string &port)
 Returns information about a given physical or application port. More...
 
json GetDiagnostic ()
 Returns the content of the diagnostic memory formatted in JSON. More...
 
json GetDiagnosticFilterSchema ()
 Returns the JSON schema for the filter expression provided to the getFiltered() method. More...
 
json GetDiagnosticFiltered (const json &filter)
 Returns the content of the diagnostic memory formatted in JSON and filtered according to the JSON filter expression. More...
 
void Reboot (const BootMode &mode=ifm3d::Device::BootMode::PRODUCTIVE) override
 Reboot the device. More...
 
void RebootToRecovery ()
 Reboot the device into Recovery Mode.
 
DeviceFamily WhoAmI () override
 This function can be used to retrieve the family of the connected device. More...
 
ifm3d::Device::SWUVersion SwUpdateVersion () override
 Checks the swupdater version supported by device. More...
 
json ToJSON () override
 Serializes the state of the device to JSON. More...
 
void FromJSON (const json &j) override
 Configures the device based on the parameter values of the passed in JSON. More...
 
void DownloadServiceReport (const std::string &out_file)
 
- Public Member Functions inherited from ifm3d::Device
 Device (const std::string &ip=ifm3d::DEFAULT_IP, std::uint16_t xmlrpc_port=ifm3d::DEFAULT_XMLRPC_PORT)
 Initializes the device interface utilizing library defaults for password, ip, and xmlrpc port unless explicitly passed in. More...
 
virtual ~Device ()
 The dtor will cancel any open edit sessions with the device.
 
 Device (Device &&)=delete
 
Deviceoperator= (Device &&)=delete
 
 Device (Device &)=delete
 
Deviceoperator= (Device &)=delete
 
virtual std::string IP ()
 The IP address associated with this Device instance.
 
virtual std::uint16_t XMLRPCPort ()
 The XMLRPC Port associated with this Device instance.
 
virtual void ForceTrigger ()
 Sends a S/W trigger to the device over XMLRPC. More...
 
virtual std::string DeviceType (bool use_cached=true)
 This is a convenience function for extracting out the device type of the connected device. More...
 
virtual bool AmI (DeviceFamily family)
 This is a convenience function for checking whether a device is one of the specified device family. More...
 
virtual std::string DeviceParameter (const std::string &key)
 Convenience accessor for extracting a device parameters (i.e., no edit session created on the device)
 
virtual std::vector< std::string > TraceLogs (int count)
 Delivers the trace log from the device A session is not required to call this function. More...
 
virtual std::string ToJSONStr ()
 A stringified version of the JSON object returned by ToJSON(). More...
 
virtual void FromJSONStr (const std::string &jstr)
 Accepts a string with properly formatted/escaped JSON text, converts it to a json object, and call FromJSON() on it. More...
 
bool CheckMinimumFirmwareVersion (unsigned int major, unsigned int minor, unsigned int patch)
 Checks for a minimum ifm device software version. More...
 
ifm3d::SemVer FirmwareVersion ()
 get the firmware version of the device
 
json GetSWVersion ()
 

Additional Inherited Members

- Static Public Member Functions inherited from ifm3d::Device
static std::vector< ifm3d::IFMNetworkDeviceDeviceDiscovery ()
 This function Provides a convinent way to find all ifm devices on the network. More...
 
static void SetTempIPAddress (const std::string &mac, const std::string &temp_ip)
 This function Provides a way to set temporary IP. More...
 
static Ptr MakeShared (const std::string &ip=ifm3d::DEFAULT_IP, std::uint16_t xmlrpc_port=ifm3d::DEFAULT_XMLRPC_PORT, const std::string &password=ifm3d::DEFAULT_PASSWORD, bool throw_if_unavailable=true)
 Factory function for instantiating the proper subclass based on h/w probing. More...
 
- Protected Member Functions inherited from ifm3d::Device
int device_id ()
 Implements the serialization of the device state to JSON. More...
 
bool check_device_id (int device_id, int min_id, int max_id)
 
std::shared_ptr< XMLRPC > x_wrapper ()
 
- Protected Attributes inherited from ifm3d::Device
std::unique_ptr< Impl > _impl
 
std::string _device_type
 The cached device type of the connected device.
 

Detailed Description

Device specialization for O3C.

Member Function Documentation

◆ SwUpdateVersion()

ifm3d::Device::SWUVersion ifm3d::O3C::SwUpdateVersion ( )
overridevirtual

Checks the swupdater version supported by device.

Returns
sw_version supported by device

Reimplemented from ifm3d::Device.

◆ WhoAmI()

DeviceFamily ifm3d::O3C::WhoAmI ( )
overridevirtual

This function can be used to retrieve the family of the connected device.

Returns
the device family of the connected device.

Reimplemented from ifm3d::Device.


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