void IoAudioMixer_mark(IoAudioMixer *self) { /* buffer is a UArray */ List_do_(DATA(self)->sounds, (ListDoCallback *)IoObject_makeGrayIfWhite); List_do_(DATA(self)->events, (ListDoCallback *)AudioEvent_mark); List_do_(DATA(self)->activeEvents, (ListDoCallback *)AudioEvent_mark); List_do_(DATA(self)->soundsToRemove, (ListDoCallback *)IoObject_makeGrayIfWhite); IoObject_makeGrayIfWhite(DATA(self)->ioAudioDevice); IoObject_makeGrayIfWhite(DATA(self)->writeMessage); IoObject_makeGrayIfWhite(DATA(self)->nonBlockingWriteMessage); IoObject_makeGrayIfWhite(DATA(self)->ioBuffer); }
void IoEventManager_mark(IoEventManager *self) { IoObject_shouldMark(DATA(self)->handleEventMessage); List_do_(DATA(self)->activeEvents, (ListDoCallback *)IoObject_shouldMark); // add code to walk event list and mark context values }