#ifndef INTERFACE_FOR_M_DYNAMIX_PROCESS_H
#define INTERFACE_FOR_M_DYNAMIX_PROCESS_H

namespace MM
{
class Collect_potential_from_mDynaMix;
class Collect_temperature_from_mDynaMix;
class Collect_pressure_from_mDynaMix;
class Collect_density_from_mDynaMix;

class Interface_for_M_DynaMix_process
{
public:
    virtual Text                                output_file_name () const =0;

    virtual Collect_potential_from_mDynaMix &   potential_monitor   () =0;
    virtual Collect_temperature_from_mDynaMix & temperature_monitor () =0;
    virtual Collect_pressure_from_mDynaMix &    pressure_monitor    () =0;
    virtual Collect_density_from_mDynaMix &     density_monitor     () =0;

    virtual void                                stop                () =0;
    virtual void                                publish_step_finish () =0;
};

}//MM

#endif //INTERFACE_FOR_M_DYNAMIX_PROCESS_H
