void CanMemberDelete(CanMemberStruct *Data, CanMemberInfo *CanMember) { unsigned long Uid; Uid = CanMemberInfoGetUid(CanMember); MapDel(CanMemberGetCanMemberDb(Data), (MapKeyType)Uid); CanMemberSetNumMembers(Data, CanMemberGetNumMembers(Data) - 1); }
static void PurgeDeletedLoks(LokStruct *Data) { AddrSearchType Search; do { Search.Addr = 0l; Search.Result = (LokInfo *)NULL; MapWalkAscend(LokGetLokDb(Data), (MapWalkCbFkt)SearchDeleted, (void *)&Search); if (Search.Result != (LokInfo *)NULL) { MapDel(LokGetLokDb(Data), LokInfoGetName(Search.Result)); } } while (Search.Result != (LokInfo *)NULL); }
void Cs2CfgDataEnd(Cs2CfgData *Data, unsigned int CanHash) { Cs2CfgEntry *Entry; Entry = (Cs2CfgEntry *)MapGet(Cs2CfgDataGetCfgDatas(Data), (MapKeyType)CanHash); if (Entry != (Cs2CfgEntry *)NULL) { Cs2CfgEntrySetCfgLength(Entry, 0); Cs2CfgEntrySetCfgHaveRead(Entry, 0l); if (Cs2CfgEntryGetCfgBuffer(Entry) != (char *)NULL) { free(Cs2CfgEntryGetCfgBuffer(Entry)); Cs2CfgEntrySetCfgBuffer(Entry, (char *)NULL); } MapDel(Cs2CfgDataGetCfgDatas(Data), (MapKeyType)CanHash); } }
void CanMemberDelAllInvalid(CanMemberStruct *Data) { Menge *MemberToDel; MengeIterator IterToDel; CollectStruct Collector; unsigned long *UidToDel; MemberToDel = MengeCreate(); MengeInit(MemberToDel, MemberDelCmp, (MengeDelCbFkt)free); Collector.CanMemberDb = CanMemberGetCanMemberDb(Data); Collector.MemberToDel = MemberToDel; MapWalkAscend(CanMemberGetCanMemberDb(Data), (MapWalkCbFkt)CollectInvalid, (void *)&Collector); MengeInitIterator(&IterToDel, MemberToDel); UidToDel = (unsigned long *)MengeFirst(&IterToDel); while (UidToDel != 0l) { MapDel(CanMemberGetCanMemberDb(Data), (MapKeyType)*UidToDel); UidToDel = (unsigned long *)MengeNext(&IterToDel); } MengeDestroy(MemberToDel); }
void GleisbildDelete(GleisbildStruct *Data, GleisbildInfo *Gleisbild) { int Id; Id = GleisbildInfoGetId(Gleisbild); MapDel(GleisbildGetGleisbildDb(Data), (MapKeyType)Id); }