.. _get_output_register_int: get_output_register_int ------------------------------------------ This function reads an **integer value** from the controller **output 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_output_register_int(unsigned short address, int& out_val, int timeout_ms = 300) { return _get_output_register_int(_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 - - - **Output register address** (int type, 0~23) * - out_val - int& - - - **Output integer 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 output register int * - 1 - Success: output register int read **Example** .. code-block:: cpp #include "DRFLEx.h" #include using namespace DRAFramework; int main() { CDRFLEx robot; const char* ip = "192.168.137.100"; if (!robot.open_connection(ip)) { std::cout << "Failed to connect: " << ip << std::endl; return 1; } // Write int and read back (timeout 300 ms) // Initialize to 0 to indicate “not read yet” if the call fails. int out_int = 0; robot.set_output_register_int(0, 1); robot.get_output_register_int(0, out_int, 300); std::cout << "addr=0, out_int=" << out_int << std::endl; robot.close_connection(); return 0; } This example writes an integer value to the output register at **address 0 (Int_Output_Register[0])** and reads it back.