mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-09-02 12:13:54 +00:00
[repos] lgprotocol: import shared protocol definitions
Some checks failed
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
Some checks failed
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
Add LGProtocol as a pinned submodule and consume its KVMFR protocol definitions throughout the client, host, IDD, OBS, and profiler. Keep Looking Glass framebuffer helpers local while removing duplicated protocol headers and migrating users to KVMFR-scoped types.
This commit is contained in:
@@ -49,86 +49,86 @@ private:
|
||||
bool valid = false;
|
||||
bool busy = false;
|
||||
|
||||
FrameToken token = {};
|
||||
CFrameScheduler::Schedule schedule = {};
|
||||
uint64_t content = 0;
|
||||
uint64_t captureTime = 0;
|
||||
FrameToken token = {};
|
||||
CFrameScheduler::Schedule schedule = {};
|
||||
uint64_t content = 0;
|
||||
uint64_t captureTime = 0;
|
||||
uint64_t postProcessTime = 0;
|
||||
uint64_t copyTime = 0;
|
||||
uint64_t readyTime = 0;
|
||||
uint64_t holdTime = 0;
|
||||
uint64_t filledAt = 0;
|
||||
uint64_t workStart = 0;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
FrameType frameType = FRAME_TYPE_INVALID;
|
||||
Phase phase = IDLE;
|
||||
FrameDone pendingResult = FrameDone::FAILED;
|
||||
uint64_t pendingReadyAt = 0;
|
||||
bool timingValid = false;
|
||||
bool resultPending = false;
|
||||
bool callActive = false;
|
||||
uint64_t copyTime = 0;
|
||||
uint64_t readyTime = 0;
|
||||
uint64_t holdTime = 0;
|
||||
uint64_t filledAt = 0;
|
||||
uint64_t workStart = 0;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
KVMFRFrameType frameType = FRAME_TYPE_INVALID;
|
||||
Phase phase = IDLE;
|
||||
FrameDone pendingResult = FrameDone::FAILED;
|
||||
uint64_t pendingReadyAt = 0;
|
||||
bool timingValid = false;
|
||||
bool resultPending = false;
|
||||
bool callActive = false;
|
||||
bool cancelRequested = false;
|
||||
};
|
||||
|
||||
CSRWLock callLock;
|
||||
CSRWLock laneLock;
|
||||
IFrameSink * target = nullptr;
|
||||
HANDLE drained = nullptr;
|
||||
std::atomic<unsigned> outstanding = 0;
|
||||
std::atomic_bool active = false;
|
||||
std::atomic<BackendId> backend = 0;
|
||||
std::atomic<uint32_t> epoch = 0;
|
||||
bool reserved = false;
|
||||
bool primary = false;
|
||||
bool needsFullCopy = true;
|
||||
uint64_t lastContent = 0;
|
||||
uint64_t lastTerminalContent = 0;
|
||||
uint64_t blockedContent = 0;
|
||||
size_t blockedFrameSize = 0;
|
||||
bool blockedAllocation = false;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
FrameType frameType = FRAME_TYPE_INVALID;
|
||||
ResourceLane lanes[FRAME_SINK_BUFFERS] = {};
|
||||
CSRWLock callLock;
|
||||
CSRWLock laneLock;
|
||||
IFrameSink * target = nullptr;
|
||||
HANDLE drained = nullptr;
|
||||
std::atomic<unsigned> outstanding = 0;
|
||||
std::atomic_bool active = false;
|
||||
std::atomic<BackendId> backend = 0;
|
||||
std::atomic<uint32_t> epoch = 0;
|
||||
bool reserved = false;
|
||||
bool primary = false;
|
||||
bool needsFullCopy = true;
|
||||
uint64_t lastContent = 0;
|
||||
uint64_t lastTerminalContent = 0;
|
||||
uint64_t blockedContent = 0;
|
||||
size_t blockedFrameSize = 0;
|
||||
bool blockedAllocation = false;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
KVMFRFrameType frameType = FRAME_TYPE_INVALID;
|
||||
ResourceLane lanes[FRAME_SINK_BUFFERS] = {};
|
||||
};
|
||||
|
||||
struct BatchTarget
|
||||
{
|
||||
Sink * sink = nullptr;
|
||||
BackendId backend = 0;
|
||||
uint32_t epoch = 0;
|
||||
unsigned localSlot = 0;
|
||||
unsigned resourceLane = 0;
|
||||
CFrameScheduler::Schedule schedule = {};
|
||||
CFrameScheduler::Schedule deliverySchedule = {};
|
||||
uint64_t content = 0;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
FrameType frameType = FRAME_TYPE_INVALID;
|
||||
bool periodic = false;
|
||||
bool published = false;
|
||||
bool delivered = false;
|
||||
bool submitted = false;
|
||||
bool committed = false;
|
||||
bool completionPending = false;
|
||||
bool completionSucceeded = false;
|
||||
bool releasePending = false;
|
||||
uint64_t captureTime = 0;
|
||||
uint64_t postProcessTime = 0;
|
||||
uint64_t copyTime = 0;
|
||||
uint64_t readyTime = 0;
|
||||
uint64_t holdTime = 0;
|
||||
uint64_t filledAt = 0;
|
||||
uint64_t workStart = 0;
|
||||
bool timingValid = false;
|
||||
bool active = false;
|
||||
Sink * sink = nullptr;
|
||||
BackendId backend = 0;
|
||||
uint32_t epoch = 0;
|
||||
unsigned localSlot = 0;
|
||||
unsigned resourceLane = 0;
|
||||
CFrameScheduler::Schedule schedule = {};
|
||||
CFrameScheduler::Schedule deliverySchedule = {};
|
||||
uint64_t content = 0;
|
||||
unsigned pitch = 0;
|
||||
unsigned width = 0;
|
||||
unsigned height = 0;
|
||||
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN;
|
||||
KVMFRFrameType frameType = FRAME_TYPE_INVALID;
|
||||
bool periodic = false;
|
||||
bool published = false;
|
||||
bool delivered = false;
|
||||
bool submitted = false;
|
||||
bool committed = false;
|
||||
bool completionPending = false;
|
||||
bool completionSucceeded = false;
|
||||
bool releasePending = false;
|
||||
uint64_t captureTime = 0;
|
||||
uint64_t postProcessTime = 0;
|
||||
uint64_t copyTime = 0;
|
||||
uint64_t readyTime = 0;
|
||||
uint64_t holdTime = 0;
|
||||
uint64_t filledAt = 0;
|
||||
uint64_t workStart = 0;
|
||||
bool timingValid = false;
|
||||
bool active = false;
|
||||
};
|
||||
|
||||
struct Batch
|
||||
|
||||
Reference in New Issue
Block a user