ethcamerasettings.h
136 ETHCamStatus setCamExclusive(const int expireTimeSeconds = 5, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
153 ETHCamStatus setRegionOfInterest(const RegionOfInterest regionOfInterest, const uint32_t roiIndex, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
163 ETHCamStatus getRegionOfInterest(RegionOfInterest ®ionOfInterest, const uint32_t roiIndex, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
171 ETHCamStatus getRegionsOfInterest(std::vector<uint32_t> &roiIndices, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
179 ETHCamStatus eraseRegionOfInterest(const uint32_t roiIndex, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
187 ETHCamStatus subscribeROIVideo(const uint32_t roiIndex = 0, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
196 ETHCamStatus subscribeROIVideo(VideoContent &videoContent, const uint32_t roiIndex = 0, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
204 ETHCamStatus unsubscribeROIVideo(const uint32_t roiIndex, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
213 ETHCamStatus setBrightnessControl(const SignedControl sControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
221 ETHCamStatus getBrightnessControl(SignedControl &sControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
230 ETHCamStatus setSaturationControl(const UnsignedControl uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
238 ETHCamStatus getSaturationControl(UnsignedControl &uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
247 ETHCamStatus setGammaControl(const UnsignedControl uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
256 ETHCamStatus getGammaControl(UnsignedControl &uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
265 ETHCamStatus setHeaterControl(const UnsignedControl uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
273 ETHCamStatus getHeaterControl(UnsignedControl &uControl, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
281 ETHCamStatus setCamRegister(const ImagerRegister imagerRegister, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
291 ETHCamStatus setCamRegister(const uint16_t regAddress, const uint16_t regValue, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
300 ETHCamStatus setCamRegisters(const std::vector<ImagerRegister> &imagerRegisters, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
309 ETHCamStatus getCamRegister(const uint16_t regAddress, uint16_t ®Value, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
318 ETHCamStatus getCamRegisters(const std::vector<uint16_t> &addressList, std::vector<ImagerRegister> &imagerRegisters, const int maxWaitTimeMs = MAX_WAIT_TIME_MS);
326 ETHCamStatus sendMessageNoResponse(const unsigned char *data, const size_t messageLength) const;
337 ETHCamStatus sendMessageWithResponse(const unsigned char * data, const size_t messageLength, unsigned char * responseData, size_t &responseLength, const int maxWaitTimeMs = MAX_WAIT_TIME_MS) const;
ETHCamStatus openServiceDiscovery(std::vector< std::string > multicastGroups, int portNumber)
Opens a socket to look for Service Discovery messages.
The sIPv4Option struct Describes the IPv4EndpointOption.
Definition: camtypes.h:501
ETHCamStatus getHeaterControl(UnsignedControl &uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to populate the Heater Control data struct with data from the camera.
ETHCamStatus getCamRegisters(const std::vector< uint16_t > &addressList, std::vector< ImagerRegister > &imagerRegisters, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
getCamRegisters Attempts to read a list of imager registers
The ETHCameraSettings class This class is the inteface between the ETH Camera and the user...
Definition: ethcamerasettings.h:44
ETHCamStatus getCamRegister(const uint16_t regAddress, uint16_t ®Value, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Reads the content of a register block of the camera imager.
ETHCamStatus setRegionOfInterest(const RegionOfInterest regionOfInterest, const uint32_t roiIndex, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attehmps to set the parameters for the region of interest addressed by index.
Defines the region of interest. The ROIs (regions of interest) are used to acquire data from the came...
Definition: camtypes.h:451
ETHCamStatus closeServiceDiscoverySocket()
Closes the Service Discovery socket.
ETHCamStatus setGammaControl(const UnsignedControl uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to set the control for the gamma correction of the camera.
ETHCamStatus getDatasheet(Datasheet &datasheet, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to fill a struct with the datasheet of the camera.
ETHCamStatus
Returncodes and error messages. Can be sent from either the camera or the API.
Definition: camtypes.h:66
ETHCamStatus getSaturationControl(UnsignedControl &uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to populate the Saturation Control data struct with data from the camera.
ETHCamStatus open()
Opens a UDP-socket with the address and port number previously supplied.
Definition: camtypes.h:25
ETHCamStatus getRegionsOfInterest(std::vector< uint32_t > &roiIndices, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Gets the indices for all the regions of interest.
ETHCamStatus getCamStatus(CamStatus &camStatus, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to fill a struct with the status of the ETH Camera.
ETHCamStatus setCamRegisters(const std::vector< ImagerRegister > &imagerRegisters, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to write (atomic access) the content of a register block of the camera imager.
ETHCamStatus unsubscribeROIVideo(const uint32_t roiIndex, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Ends the transmission of a video stream for the requested ROI index.
~ETHCameraSettings()
Deletes the API class and frees all allocated memory.
ETHCamStatus setBrightnessControl(const SignedControl sControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to set the control for the brightness circuits of the camera.
ETHCamStatus sendMessageWithResponse(const unsigned char *data, const size_t messageLength, unsigned char *responseData, size_t &responseLength, const int maxWaitTimeMs=MAX_WAIT_TIME_MS) const
Sends a custom message to the camera and reads the response.
ETHCamStatus getGammaControl(UnsignedControl &uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to populate the Gamma Control data struct with data from the camera.
ETHCamStatus setHeaterControl(const UnsignedControl uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to set the controls for the heater of the camera.
ETHCamStatus getBrightnessControl(SignedControl &sControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to populate the Brigthness Control data struct with data from the camera.
Definition of an address/value pair of imager register.
Definition: camtypes.h:217
ETHCamStatus setCamRegister(const ImagerRegister imagerRegister, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to writes the content of a register of the cameras imager addressed by physical register add...
ETHCamStatus setSaturationControl(const UnsignedControl uControl, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to set the control for the saturation circuits of the camera.
uint16_t getClientID() const
Returns the client ID number.
ETHCamStatus eraseRegionOfInterest(const uint32_t roiIndex, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempt to erases all parameters for the requested region of interest.
ETHCamStatus getRegionOfInterest(RegionOfInterest ®ionOfInterest, const uint32_t roiIndex, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Gets the parameters for the region of interest addressed by index.
ETHCamStatus serviceDiscoveryGetIPv4(IPv4Option &option)
Reads the socket for a Service Discovery - Offer Service message with the IPv4 endpoint option...
ETHCamStatus subscribeROIVideo(const uint32_t roiIndex=0, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Starts the transmission of a video stream for the requested ROI index.
uint16_t getSessionID() const
Returns the session ID number.
ETHCamStatus setCamExclusive(const int expireTimeSeconds=5, const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to assign the control of the camera exclusively to the requesting client.
ETHCamStatus sendMessageNoResponse(const unsigned char *data, const size_t messageLength) const
Sends a custom message, without expecting a response from the camera.
ETHCamStatus eraseCamExclusive(const int maxWaitTimeMs=MAX_WAIT_TIME_MS)
Attempts to remove the exclusive control look for the requesting client.
Defines the format of a video content notification package.
Definition: camtypes.h:238
static std::string stringifyETHCamStatus(const ETHCamStatus camStatus)
Returns the ETHCamStatus enum as a std::string, useful for debugging.