package com.njcn.service.commons;


import com.njcn.pojo.advanced.EntityAdvancedData;
import com.njcn.pojo.commons.WaveData;
import com.njcn.pojo.data.WaveSvg;
import com.njcn.pojo.wave.WaveDataDetail;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

public interface IWaveService {

    //通过优化后的方式获取波形数据
    WaveData getWavedata(String eventIndex, int flag);

    EntityAdvancedData analysis(String eventIndex) throws Exception;

    //根据事件索引获取需要下载文件的路径
    Map<String, List<String>> getEventDetailIndexList(List<String> index);

    //根据波形文件路径获取波形数据
    WaveData getWavedataByPath(String path) throws ParseException;

    Integer getPtType(String index);

    List<WaveDataDetail> filteWaveData(WaveData waveData);

    String createShunTitle(String title, WaveDataDetail waveDataDetail) throws Exception;

    String createRMSTitle(String title, WaveDataDetail waveDataDetail) throws Exception;

    String createShun(WaveDataDetail waveDataDetail) throws Exception;

    String createRMS(WaveDataDetail waveDataDetail) throws Exception;

    List<WaveData> getWaveDataCompare(String[] indexArray, int flag);

    WaveSvg createShunS(WaveDataDetail waveDataDetail) throws Exception;

    WaveSvg createRMSS(WaveDataDetail waveDataDetail) throws Exception;

    WaveSvg createShunSTitle(String title, WaveDataDetail waveDataDetail) throws Exception;

    WaveSvg createRMSSTitle(String title, WaveDataDetail waveDataDetail) throws Exception;
}
