Changes include: 1. Fix refreshkeys when handling renewal response. 2. Change ECM start detect method. 3. Fix signing key truncation. 4. Reformat C++ code. 5. Return license_id in LICENSE_CAS_READY payload. 6. Expose OEMCrypto API version in the license request. 7. Add support for newly added widevine cas ids. 8. Store content iv and encryption mode info to entitled key. 9. Upgrade ODK library to 16.4.
56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
// Copyright 2018 Google LLC. All Rights Reserved. This file and proprietary
|
|
// source code may only be used and distributed under the Widevine Master
|
|
// License Agreement.
|
|
//
|
|
// Timer - Platform independent interface for a Timer class
|
|
//
|
|
#ifndef TIMER_H_
|
|
#define TIMER_H_
|
|
|
|
#include <stdint.h>
|
|
|
|
#include "disallow_copy_and_assign.h"
|
|
|
|
namespace wvutil {
|
|
|
|
// Timer Handler class.
|
|
//
|
|
// Derive from this class if you wish to receive events when the timer
|
|
// expires. Provide the handler when setting up a new Timer.
|
|
|
|
class TimerHandler {
|
|
public:
|
|
TimerHandler(){};
|
|
virtual ~TimerHandler(){};
|
|
|
|
virtual void OnTimerEvent() = 0;
|
|
};
|
|
|
|
// Timer class. The implementation is platform dependent.
|
|
//
|
|
// This class provides a simple recurring timer API. The class receiving
|
|
// timer expiry events should derive from TimerHandler.
|
|
// Specify the receiver class and the periodicty of timer events when
|
|
// the timer is initiated by calling Start.
|
|
|
|
class Timer {
|
|
public:
|
|
class Impl;
|
|
|
|
Timer();
|
|
~Timer();
|
|
|
|
bool Start(TimerHandler *handler, uint32_t time_in_secs);
|
|
void Stop();
|
|
bool IsRunning();
|
|
|
|
private:
|
|
Impl *impl_;
|
|
|
|
CORE_DISALLOW_COPY_AND_ASSIGN(Timer);
|
|
};
|
|
|
|
} // namespace wvutil
|
|
|
|
#endif // TIMER_H_
|