AP&C API Reference
|
Implements the core features of all polling controllers expecting 16-bit values (or less). More...
Public Member Functions | |
virtual IEnumerable< ControllerDescriptor > | GetDescriptors () |
Gets the descriptors for the controller, which might include more than one due to some architectures that can have more than one input board, or addressable source, for use during measurement configuration. More... | |
![]() | |
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... | |
![]() | |
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... | |
![]() | |
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 when starting. More... | |
override void | OnStop () |
Called when stopping. More... | |
abstract void | OnStopping () |
Called when starting, allows the subclass to perform startup tasks. More... | |
abstract void | OnPerformPollEnding () |
Called when the method that performs the polling is ending, allows the subclass to handle any resources used during polling. This is called from the 'finally' block so it will happen if an exception triggers the method to end. More... | |
abstract Monitoring.Readings | OnPollReadings (DateTime mark) |
Called when it is time to poll the readings, allows the subclass to implement detailed procedures for communicating with different devices. More... | |
abstract ulong[] | OnGetSensorIds () |
Called when the sensor identifiers are neededd. More... | |
![]() | |
AcquisitionResponse | CheckLicense () |
Checks the license. More... | |
ReleaseResponse | ReleaseLicense () |
Releases the license. More... | |
virtual void | Dispose (bool cleanUpManagedObjects) |
Releases unmanaged and - optionally - managed resources. More... | |
![]() | |
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 | |
abstract int | NumReadings [get] |
Gets the num readings expected by the subclass. 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 | 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... | |
![]() | |
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... | |
![]() | |
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... | |
![]() | |
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... | |
![]() | |
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 | |
![]() | |
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... | |
![]() | |
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... | |
Implements the core features of all polling controllers expecting 16-bit values (or less).
|
inlinevirtual |
Gets the descriptors for the controller, which might include more than one due to some architectures that can have more than one input board, or addressable source, for use during measurement configuration.
Implements Apac.Control.IController.
Reimplemented in Apac.Dlp.Control.DlpIo20Controller.
|
inlineprotectedvirtual |
Called when the supervisable component needs to check the state of its runtime reference components.
Implements Apac.Supervisable.
|
protectedpure virtual |
Called when the sensor identifiers are neededd.
Implemented in Bushido.Upt.Control.PegController, Apac.Control.MockController2, Apac.Dlp.Control.DlpIo20Controller, and Apac.Dallas.OneWire.Control.OneWireController.
|
inlineprotectedvirtual |
Called when the supervisable component is intitialized.
config | The configuration to use for initialization. |
Implements Apac.Supervisable.
|
protectedpure virtual |
Called when the method that performs the polling is ending, allows the subclass to handle any resources used during polling. This is called from the 'finally' block so it will happen if an exception triggers the method to end.
Implemented in Bushido.Upt.Control.PegController, Apac.Control.MockController2, Apac.Dlp.Control.DlpIo20Controller, and Apac.Dallas.OneWire.Control.OneWireController.
|
protectedpure virtual |
Called when it is time to poll the readings, allows the subclass to implement detailed procedures for communicating with different devices.
mark | The time marked for the poll. Most controllers won't need this, but it's good for mocking up data. |
Implemented in Apac.Control.MockController2, Apac.Control.HttpController, Apac.Dlp.Control.DlpIo20Controller, and Apac.Dallas.OneWire.Control.OneWireController.
|
inlineprotectedvirtual |
Called when the supervisable component needs to resolve its runtime references to other components.
Implements Apac.Supervisable.
|
inlineprotectedvirtual |
Called when starting.
Implements Apac.Supervisable.
|
inlineprotectedvirtual |
Called when stopping.
Implements Apac.Supervisable.
|
protectedpure virtual |
Called when starting, allows the subclass to perform startup tasks.
Called when stopping, allows the subclass to perform shutdown tasks.
Implemented in Bushido.Upt.Control.PegController, Apac.Control.MockController2, Apac.Dlp.Control.DlpIo20Controller, and Apac.Dallas.OneWire.Control.OneWireController.
|
get |
Gets the duration of the delay (in milliseconds).
The duration of the delay.
|
getprotected |
Gets the num readings expected by the subclass.
The num readings.
This may not apply to all controller types and is not used by this base class for any reason.
|
get |
Gets the poll frequency (in seconds).
|
get |
Gets the resolution value, not number of bits. IE: 4096 == 16 bits.
|
get |
Gets the identification numbers of the sensors that are actively available to the controller. This helps with system discovery and setup.