/************************************************************************ ** ** FILE : cellorg.c ** ** ZWECK : ** ** AUTOR : Michael C. Ancutici ** Universitaet Stuttgart, Fakultaet Informatik ** ** DATUM : 14.03.93 ** *************************************************************************/ #include "cellorg.h" #include "celltype.h" #include "ste.h" #include "tra.h" #include "ka.h" /************************************************************************* ** FUNKTION: CellGetOrg ** ZWECK: besorgt OrginalPointer zu h und deallokiert h ** EINGABE: ** AUSGABE: ** RETURN: ** ANMERK: *************************************************************************/ OBJECT *CellGetOrg( h) OBJECT *h; { char typ = h->typ; void *p; switch ( typ) { case CE_STELLE: p = SteStelle[ h->Nr1]->OrgSte; break; case CE_STE_NAME: p = SteStelle[ h->Nr1]->OrgSteN; break; case CE_TRANSITION: p = TraTrans[ h->Nr1]->OrgTra; break; case CE_TRANS_NAME: p = TraTrans[ h->Nr1]->OrgTraN; break; case CE_ST_KANTE: p = KaKante[ h->Nr1][ h->Nr2].NachTrans->OrgKa; break; case CE_TS_KANTE: p = KaKante[ h->Nr1][ h->Nr2].NachStelle->OrgKa; break; case CE_ST_KANTE_DELTA: p = KaKante[ h->Nr1][ h->Nr2].NachTrans->OrgKaD; break; case CE_TS_KANTE_DELTA: p = KaKante[ h->Nr1][ h->Nr2].NachStelle->OrgKaD; break; case CE_TEXT: break; } free( h); return ( (OBJECT *)p ); }