#include <iostream>
#include "lista.h"
using namespace std;
void lista::lerombol()
{
    while(elso)
    {
        elem *p=elso;
        elso=elso->kov;
        delete p;
    }
}
void lista::hozzafuz(adat a)
{
    elem *p=new elem;
    if(!p)
    {
        cerr<<"Nincs memoria\n";
        exit(1);
    }
    p->a=a;
    if(!elso)
    {
        p->kov=p->elo=0;
        elso=utolso=p;
    }
    else
    {
        p->kov=0;
        utolso->kov=p;
        p->elo=utolso;
        utolso=p;
    }
}
void lista::kilistaz() const
{
    elem *p=elso;
    while(p)
    {
        cout<<p->a.azon<<" "<<p->a.nev<<" "<<p->a.atlag<<"\n";
        p=p->kov;
    }
}
void lista::lemezreir(std::ofstream& of) const
{
    elem *p=elso;
    while (p)
    {
        of.write((char*)&p->a,sizeof(adat));
        p=p->kov;
    }
}
void lista::lemezrololvas(std::ifstream& in)
{
    adat a;
    while (in.read((char*)&a, sizeof(adat)) )
    {
        hozzafuz(a);
    }
}