EventMainRendererPpsHdr.cpp 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include "EventMainRendererPpsHdr.h"
  2. #include "MainRenderer.h"
  3. #include "Globals.h"
  4. namespace Event {
  5. //======================================================================================================================
  6. // Constructor =
  7. //======================================================================================================================
  8. MainRendererPpsHdr::MainRendererPpsHdr(uint startTime, uint duration,
  9. float exposure_, uint blurringIterationsNum_, float blurringDist_):
  10. Event(MAIN_RENDERER_PPS_HDR, startTime, duration)
  11. {
  12. finalData.exposure = exposure_;
  13. finalData.blurringIterationsNum = blurringIterationsNum_;
  14. finalData.blurringDist = blurringDist_;
  15. originalData.exposure = MainRendererSingleton::getInstance().getPps().getHdr().getExposure();
  16. originalData.blurringIterationsNum =
  17. MainRendererSingleton::getInstance().getPps().getHdr().getBlurringIterationsNum();
  18. originalData.blurringDist = MainRendererSingleton::getInstance().getPps().getHdr().getBlurringDist();
  19. }
  20. //======================================================================================================================
  21. // Constructor =
  22. //======================================================================================================================
  23. MainRendererPpsHdr::MainRendererPpsHdr(const MainRendererPpsHdr& b):
  24. Event(MAIN_RENDERER_PPS_HDR, 0.0, 0.0)
  25. {
  26. *this = b;
  27. }
  28. //======================================================================================================================
  29. // operator= =
  30. //======================================================================================================================
  31. MainRendererPpsHdr& MainRendererPpsHdr::operator=(const MainRendererPpsHdr& b)
  32. {
  33. Event::operator=(b);
  34. finalData = b.finalData;
  35. originalData = b.originalData;
  36. return *this;
  37. }
  38. //======================================================================================================================
  39. // updateSp =
  40. //======================================================================================================================
  41. void MainRendererPpsHdr::updateSp(uint /*prevUpdateTime*/, uint crntTime)
  42. {
  43. float d = crntTime - getStartTime(); // delta
  44. float dp = d / getDuration(); // delta as persentage
  45. MainRendererSingleton::getInstance().getPps().getHdr().setExposure(
  46. interpolate(originalData.exposure, finalData.exposure, dp));
  47. MainRendererSingleton::getInstance().getPps().getHdr().setBlurringIterationsNum(
  48. interpolate(originalData.blurringIterationsNum, finalData.blurringIterationsNum, dp));
  49. MainRendererSingleton::getInstance().getPps().getHdr().setBlurringDist(
  50. interpolate(originalData.blurringDist, finalData.blurringDist, dp));
  51. }
  52. } // end namespace