43 lines
915 B
C++
43 lines
915 B
C++
/* SPDX-License-Identifier: MIT */
|
|
/**
|
|
@file windows/eventimpl.h
|
|
@brief Declares the AJAEventImpl class.
|
|
@copyright (C) 2009-2021 AJA Video Systems, Inc. All rights reserved.
|
|
**/
|
|
|
|
#ifndef AJA_EVENT_IMPL_H
|
|
#define AJA_EVENT_IMPL_H
|
|
|
|
#include "ajabase/system/system.h"
|
|
#include "ajabase/common/common.h"
|
|
#include "ajabase/system/event.h"
|
|
|
|
|
|
class AJAEventImpl
|
|
{
|
|
public:
|
|
|
|
AJAEventImpl(bool manualReset, const std::string& name);
|
|
virtual ~AJAEventImpl();
|
|
|
|
AJAStatus Signal();
|
|
AJAStatus Clear();
|
|
|
|
AJAStatus SetState(bool signaled = true);
|
|
AJAStatus GetState(bool* pSignaled);
|
|
|
|
AJAStatus SetManualReset(bool manualReset);
|
|
AJAStatus GetManualReset(bool* pManualReset);
|
|
|
|
AJAStatus WaitForSignal(uint32_t timeout = 0xffffffff);
|
|
|
|
virtual AJAStatus GetEventObject(uint64_t* pEventObject);
|
|
|
|
HANDLE mEvent;
|
|
|
|
private:
|
|
bool mManualReset;
|
|
};
|
|
|
|
#endif // AJA_EVENT_IMPL_H
|