// $Source: /usr/local/SimSoft/Sfx3D/src/gsl/avis.h,v $
// $Revision: 1.2 $
// $Author: baum $
// $Date: 2001/11/29 15:18:09 $
//
// Login name of the user who locked the revision
// $Locker:  $
// Tag name used to checkout the file
// $Name:  $
// State assigned to revision
// $State: Exp $
//
//
// $Log: avis.h,v $
// Revision 1.2  2001/11/29 15:18:09  baum
// -Realzeitsteuerung eingebaut
// -Handsteuerung eingebaut
//

#ifndef _AVIS_H
#define _AVIS_H     1

#ifdef _AVIS_CPP
#  undef _impexp
#  define _impexp __declspec(dllexport)
#elif defined BUILD_MAIN_DLL
#  undef _impexp
#  define _impexp 
#else
#  undef _impexp
#  define _impexp __declspec(dllimport)
#endif

#if defined __GNUC__ || defined __hpux
#  undef _impexp
#  define _impexp
#endif

//---------------------------------------------------------
// Klasse typAvis
//---------------------------------------------------------

class _impexp typAvis {
  public:
    typAvis  ();
    ~typAvis ();

    const int& DirIstAnzahl     () const;
    const int& incDirIstAnzahl  ();
    const int& decDirIstAnzahl  ();

    const unsigned& DirSollAnzahl    () const;
    const unsigned& setDirSollAnzahl (const unsigned& Sollwert);

    bool isDirAvisOk () const;

    const int& IndIstAnzahl     () const;
    const int& incIndIstAnzahl  ();
    const int& decIndIstAnzahl  ();

    const unsigned& IndSollAnzahl    () const;
    const unsigned& setIndSollAnzahl (const unsigned& Sollwert);

    bool isIndAvisOk () const;
    int  DirSollIstVergleich () const;

  private:
    int ObjDirIstAnzahl;
    unsigned ObjDirSollAnzahl;
    int ObjIndIstAnzahl;
    unsigned ObjIndSollAnzahl;
    /*
    double DirIstVolumen;
    double DirSollVolumen;
    double IndIstVolumen;
    double IndSollVolumen;
    */

    // declared, but not defined
    typAvis (const typAvis&);
    const typAvis& operator = (const typAvis&);
};

#endif // _AVIS_H
