public String getDataReaderCall(SimpleTypeReference simpleTypeReference) {
        final int sizeInBits = simpleTypeReference.getSizeInBits();
        switch (simpleTypeReference.getBaseType()) {
            case BIT:
                return "read_bit";
            case BYTE:
                return "read_byte";
            case UINT:
                if (sizeInBits <= 8) return "read_unsigned_byte";
                if (sizeInBits <= 16) return "read_unsigned_short";
                if (sizeInBits <= 32) return "read_unsigned_int";
                return "read_unsigned_long";
            case INT:
                if (sizeInBits <= 8) return "read_signed_byte";
                if (sizeInBits <= 16) return "read_signed_short";
                if (sizeInBits <= 32) return "read_signed_int";
                return "read_signed_long";
            case FLOAT:
                if (sizeInBits <= 32) return "read_float";
                return "read_double";
            case STRING:
                return "read_str";
            case VSTRING:
                VstringTypeReference vstringTypeReference = (VstringTypeReference) simpleTypeReference;
                return "read_str";
            case TIME:
                return "read_time";
            case DATE:
                return "read_date";
            case DATETIME:
                return "read_date_time";
            default:
                throw new UnsupportedOperationException("Unsupported type " + simpleTypeReference.getBaseType());
        }
    }
Returns the name of the Python data reader method that should be used to read a value of the given type.

<p>
This method is used to generate code for converting a type reference to a PLC4Py type name.

@param simpleTypeReference the type reference to get the PLC4Py type name for
@return the name of the Python data reader method
code-generation/language-python/src/main/java/org/apache/plc4x/language/python/PythonLanguageTemplateHelper.java