"""Получение сырых данных из различных источников. Работа с файлами"""
import datetime
import os.path

# from PyQt5.QtSerialPort import QSerialPort


# def on_read():
#
#
#
# # создание соединения с устройством для передачи данных
# serial = QSerialPort()
# serial.setBaudRate(115200)
# serial.readyRead.connect(on_read)


def get_data_bin(file_name, data_in):
    """
    Получение данных из бинарного файла
    :param file_name: файл
    :param data_in: объект модели данных для отрисовки
    :return: массив данных
    """
    f = open(file_name, 'rb')
    size = os.path.getsize(file_name)
    chunk = f.read(size)
    data_in.data_length = int(size / 32)
    data_in.update_data(data_in.data_length)
    f.close()
    return chunk


def write_file():
    """
    Запись файла
    """
    # создание папки data(если её нет)
    if not os.path.isdir("data"):
        os.mkdir("data")

    file_name = datetime.datetime.now().strftime('%d%m%y%H%M%S')
    file = open('data/' + file_name + '.txt', 'wb')
    return file, file_name


def write_in_file(file, rx):
    file.write(rx)


def close_file(file):
    """
    Закончить запись и закрыть файл
    """
    if file != "":
        file.close()

    return ""
