function [T,dx,dy,dz,TR1,TR2]=lemi_daily_read_fun(file,FlagRot)
% Считывание всех данных LEMI-008 из cуточного файла типа
% LEMI_YYYYMMDD.dat и восстановление пропусков в 04m22s
%
%  [T,dx,dy,dz,heat1,heat2]=lemi_daily_read_fun(file);
%
% file      - имя файла (с путём, если не в текущей папке)
% FlagRot   - необходимость учёта разворота блока датчиков:
%               1 - учитываем (по умолчанию), 0 - нет
%
% T         - сериальная дата моментов измерений
% dx,dy,dz  - измеренные вариации (нТл), разворот датчиков (углы
%                   Эйлера) учтён, если FlagRot=1
% TR1,TR2   - температура блока датчиков и блока электроники (град.С)

% 01.05.2010    - Хомутов С.Ю. (адаптировано из lemi_read_ini.m)
%               - консольное UNZIP.exe заменено на матлабовскую unzip()
%               - данные считываются для заданного интервала времени
%               - для MatLab вер.7 и выше используетcz textscan()
%               - заложен учет разворота датчиков
% 05.08.2010    - при полном отсутствии данных за сутки выход по ошибке
%                   error() замен на return 
%                   с hh=0; mm=0; ss=0; dx=NaN; dy=NaN; dz=NaN; ... 
% 11.04.2019    - модифицировна по lemi_read_fun

LEMI_length_rec=45;     % длина записи в файл LEMI-008, включаЯ CR и LF
lemi_fmt='%d:%d:%d %f %f %f %d %d'; % формат записи данных LEMI
ML_ver=version;

if nargin<2
    FlagRot=1;
end
if ~exist(file,'file')
    error(['!!! Не могу найти файл ... ' file])
end

N=length(file); % длина имени
T0=datenum(file(N-11:N-4),'yyyymmdd'); % сериальная дата
[year0,mon0,day0]=datevec(T0);

% контроль формата записи (по длине строки)
D=dir(file);
if rem(D.bytes,LEMI_length_rec)~=0,
    error(['Ошибка формата записи в файле -> ' file]);
end

% считываем данные
fid=fopen(file,'rt');
    C=textscan(fid,lemi_fmt);   % структура, считанная по формату
fclose(fid);
T=datenum(year0,mon0,day0,double(C{1}),double(C{2}),double(C{3}));
dx=C{4}; dy=C{5}; dz=C{6};
TR1=C{7}; TR2=C{8};

% учитываем поворот датчика
if FlagRot==1
    [FI,TETA,PSI]=lemi_angles_rot_select(T0);  % углы поворота LEMI-008
    Arot=rot_matrix(FI,TETA,PSI);
    [dx,dy,dz]=vec_rotation(dx,dy,dz,Arot);
    disp('!!! Разворот блока датчиков LEMI-008 учтён !!!')
end
