function [a] = data(type, L, showData, D_obr)
%% Načtení/vygenerování dat pro přenos systémem LTE
% Vygeneruje nebo načte data ze souboru. Počet bitů bude L

% Generování posloupnosti zadané délky
if(strcmp(type,'gen')),
    a = randi([0,1],[L,1]);
end

% Načtení posloupnosti zadané délky ze souboru data.mat a proměnné a.
if(strcmp(type,'load')),
    load('data.mat');
    if(length(a)<L)
        display('Problém s načtením dat, proměnná "a" je příliš krátká.');
    else
        a = a(1:L);
    end
end

if(strcmp(type,'obr')),
    obr = rgb2gray(imread('lenna_100.png'));
%     figure('name','Stupně šedi');
%     imshow(obr);
    obr = round(double(obr)/255);
    if(D_obr),
        figure('name','Černobílý obrázek - Vstupní data');
        imshow(obr*255);
    end
    a = reshape(obr,1, size(obr,1)*size(obr,2))';
end

if(showData)
    f = figure('Name',...
    'Generovaná/načtená data sloužící jako vstup simulátoru');
    ax = axes('Parent',f,'YTick',[0 1]);
    ylim(ax,[0 1]);
    box(ax,'on');
    hold(ax,'all');

    stem(a);
    xlabel('Číslo bitu [-]');
    ylabel('Hodnota [-]');
    title('Generovaná načtená data představující Transportní blok');
end

