1 #ifndef AUDIOGRAPHER_TYPES_H
2 #define AUDIOGRAPHER_TYPES_H
6 namespace AudioGrapher {
8 typedef int64_t nframes_t;
9 typedef uint8_t ChannelCount;
11 /** Flag field capable of holding 32 flags.
12 Easily grown in size to 64 flags by changing storage_type */
16 typedef uint32_t storage_type;
18 FlagField() : _flags (0) {}
19 FlagField(FlagField const & other) : _flags (other._flags) {}
21 inline bool has (Flag flag) const { return _flags & (1 << flag); }
22 inline void set (Flag flag) { _flags |= (1 << flag); }
23 inline void remove (Flag flag) { _flags &= ~(1 << flag); }
24 inline storage_type flags () const { return _flags; }
32 #endif // __audiographer_types_h__