from cryoem.model.distribution cimport RealDistribution
from cryoem.data.grid cimport Grid1D


cdef class Gaussian(RealDistribution):
    pass

cdef class Gaussian1D(Gaussian):
    cdef double _mean
    cdef double _variance
    cdef double _std
    cpdef evaluate_grid(self, Grid1D grid)

cdef class GaussianND(Gaussian):
    cdef double[:] _mean
    cdef double[:,:] _covariance

cdef class IsoGaussianND(Gaussian):
    cdef double[:] _mean
    cdef double _variance
