pub fn sumup_get_symhandle(&mut self, var_list: &[Var], invoke_id: u32) -> ClientResult<bool> {
        //Check for already available handles
        let mut request_handle_list: Vec<ReadWriteRequest> = Vec::new();
        let remaining_var_list = self.check_available_handles(var_list, &mut request_handle_list);
        //Request not available handles
        let mut data_buf: Vec<u8> = Vec::new();
        let request_count = request_handle_list.len() as u32;
        SumupReadWriteRequest::new(request_handle_list).write_to(&mut data_buf)?;
        let request = Request::ReadWrite(ReadWriteRequest::new(
            ADSIGRP_SUMUP_READWRITE.index_group,
            ADSIGRP_SUMUP_READWRITE.index_offset_start + request_count,
            (request_count * 12),
            data_buf,
        ));
        self.request(request, invoke_id)?;
        let mut read_write_response: ReadWriteResponse = self
            .create_response_channel(invoke_id)?
            .recv()??
            .try_into()?; //blocking call to the channel rx
        Connection::check_ads_error(&read_write_response.result)?;
        let sumup_response: SumupReadResponse =
            SumupReadResponse::read_from(&mut read_write_response.data.as_slice())?;

        self.collect_handles(&remaining_var_list, &sumup_response);
        Ok(true)
    }
///Request handles for multiple variables.
Request handles for multiple variables.
Request handles for multiple variables .
pub fn sumup_get_symhandle(&mut self, var_list: &[Var], invoke_id: u32) -> ClientResult<bool> {
        //Check for already available handles
        let mut request_handle_list: Vec<ReadWriteRequest> = Vec::new();
        let remaining_var_list = self.check_available_handles(var_list, &mut request_handle_list);
        //Request not available handles
        let mut data_buf: Vec<u8> = Vec::new();
        let request_count = request_handle_list.len() as u32;
        SumupReadWriteRequest::new(request_handle_list).write_to(&mut data_buf)?;
        let request = Request::ReadWrite(ReadWriteRequest::new(
            ADSIGRP_SUMUP_READWRITE.index_group,
            ADSIGRP_SUMUP_READWRITE.index_offset_start + request_count,
            (request_count * 12),
            data_buf,
        ));
        self.request(request, invoke_id)?;
        let mut read_write_response: ReadWriteResponse = self
            .create_response_channel(invoke_id)?
            .recv()??
            .try_into()?; //blocking call to the channel rx
        Connection::check_ads_error(&read_write_response.result)?;
        let sumup_response: SumupReadResponse =
            SumupReadResponse::read_from(&mut read_write_response.data.as_slice())?;
        self.collect_handles(&remaining_var_list, &sumup_response);
        Ok(true)
    }
pub fn sumup_get_symhandle ( & mut self , var_list : & [ Var ] , invoke_id : u32 ) -> ClientResult < bool > { //Check for already available handles let mut request_handle_list : Vec < ReadWriteRequest > = Vec :: new ( ) ; let remaining_var_list = self . check_available_handles ( var_list , & mut request_handle_list ) ; //Request not available handles let mut data_buf : Vec < u8 > = Vec :: new ( ) ; let request_count = request_handle_list . len ( ) as u32 ; SumupReadWriteRequest :: new ( request_handle_list ) . write_to ( & mut data_buf ) ? ; let request = Request :: ReadWrite ( ReadWriteRequest :: new ( ADSIGRP_SUMUP_READWRITE . index_group , ADSIGRP_SUMUP_READWRITE . index_offset_start + request_count , ( request_count * 12 ) , data_buf , ) ) ; self . request ( request , invoke_id ) ? ; let mut read_write_response : ReadWriteResponse = self . create_response_channel ( invoke_id ) ? . recv ( ) ? ? . try_into ( ) ? ; //blocking call to the channel rx Connection :: check_ads_error ( & read_write_response . result ) ? ; let sumup_response : SumupReadResponse = SumupReadResponse :: read_from ( & mut read_write_response . data . as_slice ( ) ) ? ; self . collect_handles ( & remaining_var_list , & sumup_response ) ; Ok ( true ) }
Request handles for multiple variables.
Request handles for multiple variables .
&mut self
var_list
&[Var]
invoke_id
u32
&mut self
var_list
&[Var]
invoke_id
u32