You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.3 KiB
54 lines
1.3 KiB
// --------------------------------------------------------------------------- |
|
// Name: actISubsystem.h |
|
// Product: cv act library |
|
// Purpose: The class ISubsystem detects and manages the slots |
|
// |
|
// Copyright: (c) 2002 cv cryptovision GmbH |
|
// all rights reserved |
|
// Licence: The conditions for the use of this software are regulated |
|
// in the cv act library licence agreement. |
|
// |
|
// Autor: Dr. Xiangdong Wang (XWG) |
|
// Date: 03/26/2002 |
|
// --------------------------------------------------------------------------- |
|
|
|
#ifndef ACT_ISubsystem_h |
|
#define ACT_ISubsystem_h |
|
|
|
#include "actBasics.h" |
|
#include "actIRefCounted.h" |
|
#include "actISynchronize.h" |
|
#include "actIEventMonitoring.h" |
|
|
|
namespace act |
|
{ |
|
class ISlot; |
|
class ITokenConfig; |
|
|
|
// |
|
// ISubsystem |
|
class ISubsystem |
|
: public IRefCounted |
|
, public ISynchronize |
|
, public IEventMonitoring |
|
{ |
|
public: |
|
virtual void Refresh() = 0; |
|
virtual bool Disconnect() = 0; |
|
virtual bool Install(size_t port) = 0; |
|
virtual const char* GetName() const = 0; |
|
|
|
// SlotList |
|
virtual int GetSlotNumber() const = 0; |
|
virtual const ISlot* GetSlot(int pos) const = 0; |
|
virtual ISlot* CreateSlot(const char* name) = 0; |
|
|
|
virtual void SetTokenConfig(ITokenConfig* tkcfg) = 0; |
|
|
|
protected: |
|
virtual ~ISubsystem() { } |
|
}; |
|
|
|
} // namespace act |
|
|
|
#endif // ACT_ISubsystem_h
|
|
|