History

Exposing timing and regulated radiuses

Sam Gateau committed 8 years ago

Commit f50b2fa1 parent f686ef13 files · +131 −33Browse files

Showing the changes to interface/src/workload/GameWorkload.cpp (1 of 3 files). Show all

Unified · Split

interface/src/workload/GameWorkload.cpp+13−3
@@ -38,7 +38,13 @@ void ControlViews::run(const workload::WorkloadContextPointer& runContext, const · 37 unmodified lines
38 38
39 if (_data.regulateViewRanges && inTimings.size()) {39 if (_data.regulateViewRanges && inTimings.size()) {
40 regulateViews(outViews, inTimings);40 regulateViews(outViews, inTimings);
41
42 auto config = std::static_pointer_cast<Config>(runContext->jobConfig);
43 config->dataExport = _dataExport;
44 config->emitDirty();
41 }45 }
46
47
42}48}
43 49
44glm::vec2 Regulator::run(const Timing_ns& regulationDuration, const Timing_ns& measured, const glm::vec2& current) {50glm::vec2 Regulator::run(const Timing_ns& regulationDuration, const Timing_ns& measured, const glm::vec2& current) {
@@ -64,9 +70,13 @@ void ControlViews::regulateViews(workload::Views& outViews, const workload::Timi · 19 unmodified lines
64 }70 }
65 71
66 auto loopDuration = std::chrono::nanoseconds{ std::chrono::milliseconds(16) };72 auto loopDuration = std::chrono::nanoseconds{ std::chrono::milliseconds(16) };
67 regionBackFronts[workload::Region::R1] = regionRegulators[workload::Region::R1].run(loopDuration, timings[0], regionBackFronts[workload::Region::R1]);73 _dataExport.ranges[workload::Region::R1] = regionBackFronts[workload::Region::R1] = regionRegulators[workload::Region::R1].run(loopDuration, timings[0], regionBackFronts[workload::Region::R1]);
68 regionBackFronts[workload::Region::R2] = regionRegulators[workload::Region::R2].run(loopDuration, timings[0], regionBackFronts[workload::Region::R2]);74 _dataExport.ranges[workload::Region::R2] = regionBackFronts[workload::Region::R2] = regionRegulators[workload::Region::R2].run(loopDuration, timings[0], regionBackFronts[workload::Region::R2]);
69 regionBackFronts[workload::Region::R3] = regionRegulators[workload::Region::R3].run(loopDuration, timings[1], regionBackFronts[workload::Region::R3]);75 _dataExport.ranges[workload::Region::R3] = regionBackFronts[workload::Region::R3] = regionRegulators[workload::Region::R3].run(loopDuration, timings[1], regionBackFronts[workload::Region::R3]);
76
77 _dataExport.timings[workload::Region::R1] = std::chrono::duration<float, std::milli>(timings[0]).count();
78 _dataExport.timings[workload::Region::R2] = _dataExport.timings[workload::Region::R1];
79 _dataExport.timings[workload::Region::R3] = std::chrono::duration<float, std::milli>(timings[1]).count();
70 80
71 int i = 0;81 int i = 0;
72 for (auto& outView : outViews) {82 for (auto& outView : outViews) {

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t