import logging

from hdf5.hdf5 import HDF5

logger = logging.getLogger(__name__)

class HDF5_tdms(HDF5):

    _default_grp = 'raw motor data'
    prefix = 'daq'

    def __init__(self, log_folder):
        super().__init__(log_folder)


    def _create_logfile(self, prefix=prefix):
        super()._create_logfile(prefix)


    def new_log(self):
        _default_grp = self._default_grp
        self._create_logfile()

        self._create_group(_default_grp)
        self._create_dataset(_default_grp, 'time', 'seconds')
        self._create_dataset(_default_grp, 'voltage', 'Volts', daq='9239')
        self._create_dataset(_default_grp, 'current', 'Amps', daq='9239')
        self._create_dataset(_default_grp, 'str pot', 'Volts', daq='9239')
        self._create_dataset(_default_grp, 'encoder', 'counts', daq='9361')


    def append(self, time, data):
        _default_grp = self._default_grp
        self._append_data_to_dataset_in_group(time, 'time', _default_grp)
        self._append_data_to_dataset_in_group(data[0], 'voltage', _default_grp)
        self._append_data_to_dataset_in_group(data[1], 'current', _default_grp)
        self._append_data_to_dataset_in_group(data[2], 'str pot', _default_grp)
        self._append_data_to_dataset_in_group(data[3], 'encoder', _default_grp)
