AP&C API Reference
Classes | Public Member Functions | Protected Member Functions | Properties | List of all members
Apac.TcTec.Top16.Control.Top16DIOController Class Reference

Implements I/O to the Dontronics top16dio board. It is capable of managing multiple boards based on the configuration and the board names. Right now it only reads all ports for every enabled board. More...

Inheritance diagram for Apac.TcTec.Top16.Control.Top16DIOController:
Apac.LicensedSupervisable Apac.Control.IController Apac.Supervisable Apac.ISupervisable

Public Member Functions

 Top16DIOController ()
 Initializes a new instance of the Top16DIOController class. More...
 
IEnumerable< ControllerDescriptorGetDescriptors ()
 Gets the descriptors for the controller, which includes one entry for each Top16 board. More...
 
- Public Member Functions inherited from Apac.LicensedSupervisable
bool IsLicensed (LicensedFeatures feature)
 Checks to see if an individual feature is licensed, based on the stored response. More...
 
void Dispose ()
 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. More...
 
- Public Member Functions inherited from Apac.Supervisable
void Initialize (Apac.Configuration.SupervisableConfig config, Supervisors.ISupervisor supervisor)
 Initializes the controller from configuration. More...
 
void ResolveReferences ()
 Resolves any references this component might hold to other supervisable components. More...
 
void CheckReferencesStates ()
 Checks the states of referenced components to be sure they are satisfactory for this component's operation. More...
 
void Starting ()
 Signals that the component will be starting on its own thread. This implementation uses this opportunity to CheckReferencesStates, change state to Starting, and signal subclasses with OnStarting. More...
 
void Start ()
 Starts the component. More...
 
void Stop ()
 Stops the component. More...
 
- Public Member Functions inherited from Apac.ISupervisable
void Initialize (Apac.Configuration.SupervisableConfig config, Supervisors.ISupervisor exec)
 Initializes the component with the given SupervisableConfig (or derivative) and ISupervisor. More...
 

Protected Member Functions

override void OnResolveReferences ()
 Called when the supervisable component needs to resolve its runtime references to other components. More...
 
override void OnCheckReferencesStates ()
 Called when the supervisable component needs to check the state of its runtime reference components. More...
 
override void OnInitialize (Apac.Configuration.SupervisableConfig config)
 Called when the supervisable component is intitialized. More...
 
override void OnStart ()
 Called to start the supervisable component. More...
 
override void OnStop ()
 Called to stop the supervisable component. More...
 
- Protected Member Functions inherited from Apac.LicensedSupervisable
AcquisitionResponse CheckLicense ()
 Checks the license. More...
 
ReleaseResponse ReleaseLicense ()
 Releases the license. More...
 
virtual void Dispose (bool cleanUpManagedObjects)
 Releases unmanaged and - optionally - managed resources. More...
 
- Protected Member Functions inherited from Apac.Supervisable
virtual void OnStarting ()
 Called when the supervisable component is about to start. This differs from handling OnStart in that this method is called on the supervisor's thread, whereas Start is called on a new thread. Subclasses may override this to do work that is considered initialization work that should be done before all component threads are started. More...
 
virtual void OnStateChanging (SupervisableState currentState, SupervisableState newState)
 Call chain for state changing notification. More...
 
virtual void OnStateChanged (SupervisableState previousState, SupervisableState newState)
 Call chain for state changed notification. More...
 
virtual void OnException (Exception ex)
 Call chain for exception notification. More...
 
void SetState (SupervisableState newState)
 Changes the state of the controller to the new state. More...
 
virtual void OnStateChangeStarting ()
 
virtual void OnStateChangeRunning ()
 
virtual void OnStateChangeStopping ()
 
virtual void OnStateChangeStopped ()
 
virtual void OnStateChangeInitializing ()
 
virtual void OnStateChangeInitialized ()
 
virtual void OnStateChangeErrored ()
 
virtual void OnStateChangeImpaired ()
 
void HandleException (string message, Exception e)
 Deals with the details of handling exceptions captured by the controller. More...
 
void ResetException ()
 Allows subclasses to reset the last exception to an empty state. More...
 
void HandleImpairment (string message, Exception e)
 Deals with the details of handling non-critical problems captured by the controller. More...
 

Properties

override Apac.Licensing.LicensedFeatures Features [get]
 Gets the features. More...
 
ushort Resolution [get]
 Gets the resolution value, not number of bits. IE: 4096 == 16 bits. More...
 
ushort PollFrequency [get]
 Gets the poll frequency (in seconds). More...
 
ushort DelayDuration [get]
 Gets the duration of the delay (in milliseconds). More...
 
ulong[] SensorIds [get]
 Gets the identification numbers of the sensors that are actively available to the controller. This helps with system discovery and setup. More...
 
List< Top16Boards [get]
 
- Properties inherited from Apac.LicensedSupervisable
abstract LicensedFeatures Features [get]
 Gets the licensed features used by this component. See the LicensedFeatures flags enumeration. More...
 
AcquisitionResponse LicenseResponse [get]
 Gets the license response previously obtained with CheckLicense(). More...
 
- Properties inherited from Apac.Supervisable
string Name [get]
 Gets the name of the controller, as specified by configuration. Note that if the name is not specified, then an index will be used. More...
 
string Description [get]
 Gets the description of the controller, as specified by configuration. More...
 
bool Prioritized [get]
 Indicates if the supervisable component should be executed on a higher thread priority. More...
 
DateTime LastHeartbeat [get]
 The time of the last heartbeat. More...
 
Supervisors.ISupervisor ExecutiveSupervisor [get]
 Walks the tree to find the top level supervisor. More...
 
bool IsRunning [get]
 Gets a value indicating whether this instance is running. More...
 
SupervisableState CurrentState [get]
 Gets the current overall state of the controller. More...
 
SupervisableState PreviousState [get]
 Gets the previous overall state of the controller. More...
 
Exception LastException [get]
 Gets the last exception encountered within the controller. More...
 
DateTime StartTime [get]
 Gets the time this supervisable component was started. More...
 
DateTime StopTime [get]
 Gets the time this supervisable component was stopped. More...
 
TimeSpan UpTime [get]
 Gets the amount of time this supervisable component has been running, or did run before it was stopped (if IsRunning is false). More...
 
Supervisors.ISupervisor Supervisor [get]
 Gets the supervisor. More...
 
SupervisableConfig Config [get]
 The configuration object used by the supervisable component. More...
 
log4net.ILog Log [get]
 Lazy-initialized logger for subclass usage. More...
 
- Properties inherited from Apac.ISupervisable
string Name [get]
 The name of the component, for unique identification purposes. More...
 
string Description [get]
 The description of the component, for human consumption. More...
 
bool Prioritized [get]
 Indicates if the component should be high priority. More...
 
Supervisors.ISupervisor ExecutiveSupervisor [get]
 Walks the tree to find the top level supervisor. More...
 
bool IsRunning [get]
 Indicates that the component is running. More...
 
DateTime LastHeartbeat [get]
 
DateTime StartTime [get]
 Gets the time this supervisable component was started. More...
 
DateTime StopTime [get]
 Gets the time this supervisable component was stopped. More...
 
TimeSpan UpTime [get]
 Gets the amount of time this supervisable component has been running, or did run before it was stopped (if IsRunning is false). More...
 
SupervisableState CurrentState [get]
 Gets the current SupervisableState of this component. More...
 
SupervisableState PreviousState [get]
 Gets the previous SupervisableState of this component. More...
 
Exception LastException [get]
 Gets the last exception to have occurred and been trapped by this component. More...
 
- Properties inherited from Apac.Control.IController
ushort Resolution [get]
 Gets the resolution value, not number of bits. IE: 4096 == 16 bits. More...
 
ulong[] SensorIds [get]
 Gets the identification numbers of the sensors that are actively available to the controller. This helps with system discovery and setup. More...
 
ushort PollFrequency [get]
 Gets the poll frequency (in seconds). More...
 
ushort DelayDuration [get]
 Gets the duration of the delay (in milliseconds). More...
 

Additional Inherited Members

- Events inherited from Apac.Supervisable
SupervisableStateChangingHandler SupervisableStateChanging
 Notifies listeners that the state is about to change. More...
 
SupervisableStateChangedHandler SupervisableStateChanged
 Notifies listeners that the state has changed. More...
 
SupervisableErroredHandler SupervisableErrored
 Notifies listeners that an error occured within the controller. More...
 
SupervisableHeartbeatHandler SupervisableHeartbeat
 Notifies listeners that the component is still active. More...
 
- Events inherited from Apac.ISupervisable
SupervisableStateChangingHandler SupervisableStateChanging
 Notifies listeners that the state is about to change. More...
 
SupervisableStateChangedHandler SupervisableStateChanged
 Notifies listeners that the state has changed. More...
 
SupervisableErroredHandler SupervisableErrored
 Notifies listeners that an error occured within the controller. More...
 
SupervisableHeartbeatHandler SupervisableHeartbeat
 Notifies listeners that the component is still active. More...
 

Detailed Description

Implements I/O to the Dontronics top16dio board. It is capable of managing multiple boards based on the configuration and the board names. Right now it only reads all ports for every enabled board.

Constructor & Destructor Documentation

◆ Top16DIOController()

Apac.TcTec.Top16.Control.Top16DIOController.Top16DIOController ( )
inline

Initializes a new instance of the Top16DIOController class.

Member Function Documentation

◆ GetDescriptors()

IEnumerable<ControllerDescriptor> Apac.TcTec.Top16.Control.Top16DIOController.GetDescriptors ( )
inline

Gets the descriptors for the controller, which includes one entry for each Top16 board.

Returns
Returns an T:System.Collections.Generic.IEnumerable`1 with the results.

Implements Apac.Control.IController.

◆ OnCheckReferencesStates()

override void Apac.TcTec.Top16.Control.Top16DIOController.OnCheckReferencesStates ( )
inlineprotectedvirtual

Called when the supervisable component needs to check the state of its runtime reference components.

Implements Apac.Supervisable.

◆ OnInitialize()

override void Apac.TcTec.Top16.Control.Top16DIOController.OnInitialize ( Apac.Configuration.SupervisableConfig  config)
inlineprotectedvirtual

Called when the supervisable component is intitialized.

Parameters
configThe configuration to use for initialization.

Implements Apac.Supervisable.

◆ OnResolveReferences()

override void Apac.TcTec.Top16.Control.Top16DIOController.OnResolveReferences ( )
inlineprotectedvirtual

Called when the supervisable component needs to resolve its runtime references to other components.

Implements Apac.Supervisable.

◆ OnStart()

override void Apac.TcTec.Top16.Control.Top16DIOController.OnStart ( )
inlineprotectedvirtual

Called to start the supervisable component.

Implements Apac.Supervisable.

◆ OnStop()

override void Apac.TcTec.Top16.Control.Top16DIOController.OnStop ( )
inlineprotectedvirtual

Called to stop the supervisable component.

Implements Apac.Supervisable.

Property Documentation

◆ DelayDuration

ushort Apac.TcTec.Top16.Control.Top16DIOController.DelayDuration
get

Gets the duration of the delay (in milliseconds).

The duration of the delay.

◆ Features

override Apac.Licensing.LicensedFeatures Apac.TcTec.Top16.Control.Top16DIOController.Features
get

Gets the features.

The features.

◆ PollFrequency

ushort Apac.TcTec.Top16.Control.Top16DIOController.PollFrequency
get

Gets the poll frequency (in seconds).

◆ Resolution

ushort Apac.TcTec.Top16.Control.Top16DIOController.Resolution
get

Gets the resolution value, not number of bits. IE: 4096 == 16 bits.

◆ SensorIds

ulong [] Apac.TcTec.Top16.Control.Top16DIOController.SensorIds
get

Gets the identification numbers of the sensors that are actively available to the controller. This helps with system discovery and setup.


The documentation for this class was generated from the following file: