//Magazzino: magaz.h
#ifndef CAPI_H
#include "capo.h"
#endif
#ifndef ATTRLIST_H
#include "attrlist.h"
#endif
#ifndef MENU_H
#include "menu.h"
#endif
#ifndef MAGAZ_H
#define MAGAZ_H
class Magazzino {
Capo *cont; // La lista dei capi contenuti nel magazzino
public:
Magazzino () { cont = 0; }; // Il costruttore imposta la lista a 'vuoto'
~Magazzino () { if (cont) delete cont; }; // Il distruttore elimina la lista, se c'e'
void Add (Capo *cont); // Metodo che inserice una lista di capi in magazzino
Capo *Select (AttrList *criteri); // Metodo che estrae capi dal magazzino, secondo criteri
void Inventario (); // Metodo che stampa l'inventario
};
/* Solita classe per il menu' 'inventario',
* unica voce di menu' gestita da 'magazziono'
* Al solito, solo costruttore con parametro e 'action'
* che in questo caso chiamera' la funzione di 'magazzino' per l'inventario */
class MenuInventario : public menu {
protected:
virtual void action (void *par);
public:
MenuInventario (menu **base,char *n) : menu (base,n) {};
};
#endif