//<copyright>
//
// Copyright (c) 1995
// Institute for Information Processing and Computer Supported New Media (IICM),
// Graz University of Technology, Austria.
//
//</copyright>


//<file>
//
//
// Name :       hgrastercb.h
//
// Purpose :    Interface to class HgRasterCallback
//
// Created :    03 Aug 95    Bernhard Marschall
// Modified :   03 Aug 95    Bernhard Marschall
//
//
// Description:
//
//</file>

#ifndef harmony_widgets_hgrastercb_h
#define harmony_widgets_hgrastercb_h

#include "libwidgets.h"

//<class>
//
// Name:       HgRasterCallback
//
// Purpose:    callbacks from RasterImage
//
//
// Public Interface:
//
// Description:
//
//</class>

class HgRasterCallback {
public:
  HgRasterCallback() {}
  virtual ~HgRasterCallback() {}

  virtual void readHeader() {}
  virtual void decodedSequential(int /*lines*/) {}
  virtual void decodedInterlaced() {}
  virtual void error(const char* msg);

  virtual void increaseProgress(float /*p*/) {}

  virtual int loading() const { return 0; }
  virtual int getData() { return 0; } // returns zero if there are no more data
};

#endif
