pycomm3/clx.py
def _get_structure_makeup(self, instance_id):
        """
        get the structure makeup for a specific structure
        """
        if instance_id not in self._cache['id:struct']:
            request = self.new_request('send_unit_data')
            req_path = request_path(ClassCode.template_object, Pack.uint(instance_id))
            request.add(
                CommonService.get_attribute_list,
                req_path,

                # service data:
                b'\x04\x00',  # Number of attributes
                b'\x04\x00',  # Template Object Definition Size UDINT
                b'\x05\x00',  # Template Structure Size UDINT
                b'\x02\x00',  # Template Member Count UINT
                b'\x01\x00',  # Structure Handle We can use this to read and write UINT
            )

            response = request.send()
            if not response:
                raise DataError(f"send_unit_data returned not valid data", response.error)
            _struct = _parse_structure_makeup_attributes(response)
            self._cache['id:struct'][instance_id] = _struct
            self._cache['handle:id'][_struct['structure_handle']] = instance_id

        return self._cache['id:struct'][instance_id]

        get the structure makeup for a specific structure
        
get the structure makeup for a specific structure
get the structure makeup for a specific structure
def _get_structure_makeup(self, instance_id):
        if instance_id not in self._cache['id:struct']:
            request = self.new_request('send_unit_data')
            req_path = request_path(ClassCode.template_object, Pack.uint(instance_id))
            request.add(
                CommonService.get_attribute_list,
                req_path,
                b'\x04\x00',  
                b'\x04\x00',  
                b'\x05\x00',  
                b'\x02\x00',  
                b'\x01\x00',  
            )
            response = request.send()
            if not response:
                raise DataError(f"send_unit_data returned not valid data", response.error)
            _struct = _parse_structure_makeup_attributes(response)
            self._cache['id:struct'][instance_id] = _struct
            self._cache['handle:id'][_struct['structure_handle']] = instance_id
        return self._cache['id:struct'][instance_id]
def _get_structure_makeup ( self , instance_id ) : if instance_id not in self . _cache [ 'id:struct' ] : request = self . new_request ( 'send_unit_data' ) req_path = request_path ( ClassCode . template_object , Pack . uint ( instance_id ) ) request . add ( CommonService . get_attribute_list , req_path , b'\x04\x00' , b'\x04\x00' , b'\x05\x00' , b'\x02\x00' , b'\x01\x00' , ) response = request . send ( ) if not response : raise DataError ( f"send_unit_data returned not valid data" , response . error ) _struct = _parse_structure_makeup_attributes ( response ) self . _cache [ 'id:struct' ] [ instance_id ] = _struct self . _cache [ 'handle:id' ] [ _struct [ 'structure_handle' ] ] = instance_id return self . _cache [ 'id:struct' ] [ instance_id ]
get the structure makeup for a specific structure
get the structure makeup for a specific structure
"""
        get the structure makeup for a specific structure
        """ # service data: # Number of attributes # Template Object Definition Size UDINT # Template Structure Size UDINT # Template Member Count UINT # Structure Handle We can use this to read and write UINT
self
instance_id