__author__ = 'Mikhail Vilgelm'

import pandas as pd
import math
import numpy as np
from functools import reduce
import matplotlib.pyplot as plt
import operator
from matplotlib import gridspec
from dataprocessing.basic_processor import BasicProcessor

from dataprocessing.toolbox import set_figure_parameters, get_all_files
from dataprocessing.adv_delay_processor import AdvDelayProcessor

set_figure_parameters()


def prod(iterable):
    return reduce(operator.mul, iterable, 1)


gl_best_links = '../../matlab/destinations.csv'
gl_reliability = '../../matlab/reliability.csv'


class AdvReliabilityProcessor():
    def __init__(self):
        # read the reliability data
        self.links_df = pd.read_csv(gl_best_links, names=list(range(1, 14)))
        self.reliability_df = pd.read_csv(gl_reliability,
                                          names=list(range(1, 14)))
__author__ = 'Mikhail Vilgelm'

import os, re
from os.path import isfile, join
from seaborn.apionly import heatmap
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from matplotlib import gridspec

from dataprocessing.basic_processor import set_box_plot
from dataprocessing.log_processor import LogProcessor
from dataprocessing.toolbox import set_figure_parameters, Schedule


set_figure_parameters()
pd.options.mode.chained_assignment = None
gl_num_active_slots = 13
gl_num_off_slots = 2
gl_num_serial_slots = 2
gl_mote_range = range(1, 14)
gl_dump_path = "../../data/raw"
gl_image_path = '../../SGMeasurements/pics/'
gl_save = False

gl_default_schedule = Schedule(num_slots=gl_num_active_slots, num_off=gl_num_off_slots, num_serial=gl_num_serial_slots)


class AdvDelayProcessor(LogProcessor):

    def __init__(self, **kwargs):