2d690920ac
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12360 a95241bf-73f2-0310-859d-f6bbb57e9c96
39 lines
779 B
C
39 lines
779 B
C
/*
|
|
** Copyright 2002-2004, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
|
** Distributed under the terms of the Haiku License.
|
|
*/
|
|
#ifndef VFS_SELECT_H
|
|
#define VFS_SELECT_H
|
|
|
|
#include <Select.h>
|
|
#include <util/DoublyLinkedList.h>
|
|
|
|
|
|
typedef struct select_info {
|
|
uint16 selected_events;
|
|
uint16 events;
|
|
} select_info;
|
|
|
|
typedef struct select_sync {
|
|
sem_id sem;
|
|
uint32 count;
|
|
select_info *set;
|
|
} select_sync;
|
|
|
|
#define SELECT_FLAG(type) (1L << (type - 1))
|
|
|
|
struct select_sync_pool_entry
|
|
: DoublyLinkedListLinkImpl<select_sync_pool_entry> {
|
|
selectsync *sync;
|
|
uint32 ref;
|
|
uint16 events;
|
|
};
|
|
|
|
typedef DoublyLinkedList<select_sync_pool_entry> SelectSyncPoolEntryList;
|
|
|
|
struct select_sync_pool {
|
|
SelectSyncPoolEntryList entries;
|
|
};
|
|
|
|
#endif /* VFS_SELECT_H */
|