123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #pragma once
- #include "openmpt/all/BuildSettings.hpp"
- OPENMPT_NAMESPACE_BEGIN
- struct Notification
- {
- enum Type
- {
- GlobalVU = 0x00,
- Position = 0x01,
- Sample = 0x02,
- VolEnv = 0x04,
- PanEnv = 0x08,
- PitchEnv = 0x10,
- VUMeters = 0x20,
- EOS = 0x40,
- Stop = 0x80,
- Default = GlobalVU,
- };
- typedef uint16 Item;
- static constexpr SmpLength PosInvalid = SmpLength(-1);
- static constexpr uint32 ClipVU = 0x80000000;
- int64 timestampSamples;
- FlagSet<Notification::Type> type;
- Item item;
- ROWINDEX row;
- uint32 tick, ticksOnRow;
- ORDERINDEX order;
- PATTERNINDEX pattern;
- uint32 mixedChannels;
- std::array<uint32, 4> masterVUin;
- std::array<uint32, 4> masterVUout;
- uint8 masterVUinChannels;
- uint8 masterVUoutChannels;
- std::array<SmpLength, MAX_CHANNELS> pos;
- Notification(FlagSet<Notification::Type> t = Default, Item i = 0, int64 s = 0, ROWINDEX r = 0, uint32 ti = 0, uint32 tir = 0, ORDERINDEX o = 0, PATTERNINDEX p = 0, uint32 x = 0, uint8 outChannels = 0, uint8 inChannels = 0) : timestampSamples(s), type(t), item(i), row(r), tick(ti), ticksOnRow(tir), order(o), pattern(p), mixedChannels(x), masterVUinChannels(inChannels), masterVUoutChannels(outChannels)
- {
- masterVUin.fill(0);
- masterVUout.fill(0);
- pos.fill(0);
- }
- };
- DECLARE_FLAGSET(Notification::Type);
- OPENMPT_NAMESPACE_END
|