#ifndef __SC2102_H
#define __SC2102_H
                    
#ifndef __ASSOC_H
#include <assoc.h>
#endif

#ifndef __REAL_H
#include <real.h>
#endif

///////////////////////////////////////////////////////////
// Totalizzatore
///////////////////////////////////////////////////////////

class TTotal : public TObject
{
  TImporto _importo;
  TImporto _unassigned;
  real _scaduto;
  real _esposto;
  real _importo_euro;
  
public:
  const TImporto& importo() const { return _importo; }  
  const TImporto& unassigned() const { return _unassigned; }  
  const real& importo_euro() const { return _importo_euro; }
  const real& scaduto() const { return _scaduto; }
  const real& esposto() const { return _esposto; }
  TImporto& importo() { return _importo; }  
  TImporto& unassigned() { return _unassigned; }  
  real& importo_euro() { return _importo_euro; }  
  real& scaduto() { return _scaduto; }
  real& esposto() { return _esposto; }
  
  TTotal(const TImporto& imp, const real& scaduto, 
         const real& esposto, const real& implire);
  TTotal(const TImporto& uns);
  virtual ~TTotal() {}
};

class TTotalizer : public TAssoc_array
{ 
public:
  void add(const TImporto& imp, const real& scaduto, 
           const real& esposto, const real& implire, const TString& val);
  void add(const TImporto& uns, const TString& val);
  TTotalizer() { }
  virtual ~TTotalizer() { }
};

#endif // __SC2102_H