.. _get_input_register_float: get_input_register_float ------------------------------------------ This function reads a **float value** from the controller **input register** using the specified **register address**. It is typically used for PLC I/O register monitoring in Ethernet-based environments. **Definition** |br| ``DRFLEx.h`` within class `CDRFLEx`, public section .. code-block:: cpp bool get_input_register_float(unsigned short address, float& out_val, int timeout_ms = 300) { return _get_input_register_float(_rbtCtrl, address, &out_val, timeout_ms); }; **Parameter** .. list-table:: :widths: 20 20 20 55 :header-rows: 1 * - **Parameter Name** - **Data Type** - **Default Value** - **Description** * - address - unsigned short - - - **Input register address** (float type, 0~23) * - out_val - float& - - - **Input float value** to read * - timeout_ms - int - 300 - Timeout in milliseconds **Return** .. list-table:: :widths: 25 75 :header-rows: 1 * - **Value** - **Description** * - 0 - Error: failed to read input register float * - 1 - Success: input register float read **Example** .. code-block:: cpp #include "DRFLEx.h" #include using namespace DRAFramework; int main() { CDRFLEx robot; const char* ip = "192.168.137.120"; if (!robot.open_connection(ip)) { std::cout << "Failed to connect: " << ip << std::endl; return 1; } // Read float (timeout 300 ms) // Initialize to -1.0f to indicate “not read yet” if the call fails. float out_float = 0.0f; robot.get_input_register_float(0, out_float, 300); std::cout << "addr=0, out_float=" << out_float << std::endl; robot.close_connection(); return 0; } This example reads the input register float value at **address 0(Float_Input_Register[0])**.