classdef mexBM
    properties
        % description of internal variables
        rv=RV
        rvc=RV
        rvy=RV
        % log of evidence (marginal likelihood) potentially computed by the
        % bayes rule for one step
        log_evidence
        % posterior density - offspring of mexEpdf!
        apost_pdf
        %
    end

    methods
        function p=validate(p)
            % checks if all paramateres match
        end
        function dims=dimensions(p)
            %please fill
            %dims = [size_of_posterior size_of_data size_of_condition]
            dims = [0,0,0] %
        end
        function obj=bayes(obj,dt,cond)
            % transform old estimate into new estimate
        end
        function p=epredictor(obj,cond)
            % return posterior density
        end

        %%%%%%%% default functions %%%%%%%%%%%%%%
        function r = get_rv(obj)
            r=obj.rv;
        end
        function r = get_rvc(obj)
            r=obj.rvc;
        end
        function r = get_rvy(obj)
            r=obj.rvy;
        end
        function ev = logevidence(obj)
            ev = obj.log_evidence;
        end
        function post=posterior(obj);
            post = obj.apost_pdf;
        end
    end
end