"""

Base-classes for reconstruction models and reconstruction fits.

All the models in the reconst module follow the same template: a Model object
is used to represent the abstract properties of the model, that are independent
of the specifics of the data . These properties are reused whenver fitting a
particular set of data (different voxels, for example).


"""


class ReconstModel(object):
    """ Abstract class for signal reconstruction models
    """
    def __init__(self, gtab):
        """Initialization of the abstract class for signal reconstruction models

        Parameters
        ----------
        gtab : GradientTable class instance

        """
        self.gtab=gtab

    def fit(self, data, mask=None,**kwargs):
        return ReconstFit(self, data)

class ReconstFit(object):
    """ Abstract class which holds the fit result of ReconstModel

    For example that could be holding FA or GFA etc.
    """
    def __init__(self, model, data):
        self.model = model
        self.data = data

"""

Base-classes for reconstruction models and reconstruction fits.

All the models in the reconst module follow the same template: a Model object
is used to represent the abstract properties of the model, that are independent
of the specifics of the data . These properties are reused whenver fitting a
particular set of data (different voxels, for example).


"""


class ReconstModel(object):
    """ Abstract class for signal reconstruction models
    """

    def __init__(self, gtab):
        """Initialization of the abstract class for signal reconstruction models

        Parameters
        ----------
        gtab : GradientTable class instance

        """
        self.gtab = gtab

    def fit(self, data, mask=None, **kwargs):
        return ReconstFit(self, data)


class ReconstFit(object):
    """ Abstract class which holds the fit result of ReconstModel

    For example that could be holding FA or GFA etc.
    """

    def __init__(self, model, data):
        self.model = model
        self.data = data

Update code in dipy/reconst (PEP8)
Update code in dipy/reconst (PEP8)

Using `pycodestyle` output, the file `dipy/reconst/base.py` was
updated to pass `pycodestyle` check

Signed-off-by: Antonio Ossa <1ecf3d2f96b6e61cf9b68f0fc294cab57dc5d597@uc.cl>
