void _UnlockProperty(GraphicEntityMutexFlag flag) { mutex ^= flag; // if every other property is released, graphic entity // can be deleted as well if (mutex == GraphicEntityMutexFlag.Existence) { mutex = GraphicEntityMutexFlag.None; } }
void _LockProperty(GraphicEntityMutexFlag flag) { // mutex |= flag | GraphicEntityMutexFlag.Existence; }