Click or drag to resize

ActionAdapterBase Class

Represents the base class for action adapters.
Inheritance Hierarchy
SystemObject
  GSF.TimeSeriesConcentratorBase
    GSF.TimeSeries.AdaptersActionAdapterBase
      GSF.TimeSeries.AdaptersOneSecondDataWindowAdapterBase

Namespace: GSF.TimeSeries.Adapters
Assembly: GSF.TimeSeries (in GSF.TimeSeries.dll) Version: 2.4.181-beta
Syntax
View Source

The ActionAdapterBase type exposes the following members.

Constructors
 NameDescription
Protected methodActionAdapterBase Creates a new ActionAdapterBase.
Top
Properties
 NameDescription
Public propertyAllowPreemptivePublishing Gets or sets flag that allows system to preemptively publish frames assuming all ExpectedMeasurements have arrived.
(Inherited from ConcentratorBase)
Public propertyAllowSortsByArrival Gets or sets flag that determines whether or not to allow incoming measurements with bad timestamps to be sorted by arrival time.
(Inherited from ConcentratorBase)
Public propertyAutoStart Gets or sets flag indicating if adapter should automatically start or otherwise connect on demand.
Public propertyAveragePublicationTimePerFrame Gets the average required frame publication time, in seconds.
(Inherited from ConcentratorBase)
Public propertyConnectionInfo Gets connection info for adapter, if any.
Public propertyConnectionString Gets or sets key/value pair connection information specific to action adapter.
Public propertyDataSource Gets or sets DataSet based data source available to this ActionAdapterBase.
Public propertyDiscardedMeasurements Gets the total number of measurements that have been discarded because of old timestamps (i.e., measurements that were outside the time deviation tolerance from base time, past or future).
(Inherited from ConcentratorBase)
Public propertyDownsampledMeasurements Gets the total number of down-sampled measurements processed by the concentrator.
(Inherited from ConcentratorBase)
Public propertyDownsamplingMethod Gets or sets the DownsamplingMethod to be used by the concentrator.
(Inherited from ConcentratorBase)
Public propertyEnabled Gets or sets the current enabled state of concentrator.
(Inherited from ConcentratorBase)
Public propertyExpectedMeasurements Gets or sets the expected number of measurements to be assigned to a single frame.
(Inherited from ConcentratorBase)
Public propertyFramesAheadOfSchedule Gets the total number of frames ahead of schedule processed by the concentrator.
(Inherited from ConcentratorBase)
Public propertyFramesPerSecond Gets or sets the number of frames per second.
Public propertyID Gets or sets numeric ID associated with this action adapter.
Public propertyIgnoreBadTimestamps Gets or sets flag that determines if bad timestamps (as determined by measurement's timestamp quality) should be ignored when sorting measurements.
(Inherited from ConcentratorBase)
Public propertyInitializationTimeout Gets or sets maximum time system will wait during Start for initialization.
Public propertyInitialized Gets or sets flag indicating if the action adapter has been initialized successfully.
Public propertyInputMeasurementKeys Gets or sets primary keys of input measurements the action adapter expects.
Public propertyInputSourceIDs Gets or sets Source values used to filter input measurement keys.
Public propertyIsDisposed Gets a flag that indicates whether the object has been disposed.
Public propertyLagTicks Gets defined past time deviation tolerance, in ticks.
(Inherited from ConcentratorBase)
Public propertyLagTime Gets or sets the allowed past time deviation tolerance, in seconds (can be sub-second).
Public propertyLastDiscardedMeasurement Gets a reference the last IMeasurement that was discarded by the concentrator.
(Inherited from ConcentratorBase)
Public propertyLastDiscardedMeasurementLatency Gets the calculated latency of the last IMeasurement that was discarded by the concentrator.
(Inherited from ConcentratorBase)
Public propertyLastFrame Gets reference to the last published IFrame.
(Inherited from ConcentratorBase)
Public propertyLatestMeasurements Gets reference to the collection of absolute latest received measurement values.
(Inherited from ConcentratorBase)
Public propertyLeadTime Gets or sets the allowed future time deviation tolerance, in seconds (can be sub-second).
Protected propertyLog Log messages generated by an adapter.
(Inherited from ConcentratorBase)
Public propertyMaximumPublicationTimeout Gets or sets the maximum frame publication timeout in milliseconds, set to Infinite(-1) to wait indefinitely.
(Inherited from ConcentratorBase)
Public propertyMeasurementsSortedByArrival Gets the total number of measurements that were sorted by arrival because the measurement reported a bad timestamp quality.
(Inherited from ConcentratorBase)
Public propertyMinimumMeasurementsToUse Gets or sets minimum number of input measurements required for adapter. Set to -1 to require all.
Public propertyMissedSortsByTimeout Gets the total number of missed sorts by timeout processed by the concentrator.
(Inherited from ConcentratorBase)
Public propertyName Gets name of the action adapter.
Public propertyOutputMeasurements Gets or sets output measurements that the action adapter will produce, if any.
Public propertyOutputSourceIDs Gets or sets Source values used to filter output measurements.
Public propertyPerformTimestampReasonabilityCheck Gets or sets flag that determines if timestamp reasonability checks should be performed on incoming measurements (i.e., measurement timestamps are compared to system clock for reasonability using LeadTime tolerance).
(Inherited from ConcentratorBase)
Public propertyProcessByReceivedTimestamp Gets or sets flag that determines if concentrator should sort measurements by received time.
(Inherited from ConcentratorBase)
Public propertyProcessedMeasurements Gets the total number of measurements successfully sorted.
(Inherited from ConcentratorBase)
Public propertyProcessingInterval Gets or sets the desired processing interval, in milliseconds, for the adapter.
(Inherited from ConcentratorBase)
Public propertyPublishedFrames Gets the total number of published frames.
(Inherited from ConcentratorBase)
Public propertyPublishedMeasurements Gets the total number of published measurements.
(Inherited from ConcentratorBase)
Public propertyQueueState Gets detailed state of concentrator frame queue.
(Inherited from ConcentratorBase)
Public propertyRealTime Gets the most accurate time value that is available. If UseLocalClockAsRealTime = true, then this function will return UtcNow. Otherwise, this function will return the timestamp of the most recent measurement, or UtcNow if no measurement timestamps are within time deviation tolerances as specified by the LeadTime value.
(Inherited from ConcentratorBase)
Public propertyReceivedMeasurements Gets the total number of measurements ever requested for sorting.
(Inherited from ConcentratorBase)
Public propertyRequestedInputMeasurementKeys Gets or sets input measurement keys that are requested by other adapters based on what adapter says it can provide.
Public propertyRequestedOutputMeasurementKeys Gets or sets output measurement keys that are requested by other adapters based on what adapter says it can provide.
Public propertyRespectInputDemands Gets or sets flag indicating if action adapter should respect auto-start requests based on input demands.
Public propertyRespectOutputDemands Gets or sets flag indicating if action adapter should respect auto-start requests based on output demands.
Public propertyRoundToNearestTimestamp Gets or sets a value to indicate whether the concentrator should round to the nearest frame timestamp rather than rounding down to the nearest timestamps.
(Inherited from ConcentratorBase)
Public propertyRunTime Gets the total amount of time, in seconds, that the concentrator has been active.
(Inherited from ConcentratorBase)
Public propertySettings Gets settings DictionaryTKey, TValue parsed when ConnectionString was assigned.
Protected propertyShowConcentratorStatus Gets flags that determines if ConcentratorBase class status should be included in ActionAdapterBase status.
Public propertyStartTime Gets the UTC time the concentrator was started.
(Inherited from ConcentratorBase)
Public propertyStartTimeConstraint Gets the start time temporal processing constraint defined by call to SetTemporalConstraint(String, String, String).
Public propertyStatus Returns the detailed status of the action adapter.
(Overrides ConcentratorBaseStatus)
Public propertyStopTime Gets the UTC time the concentrator was stopped.
(Inherited from ConcentratorBase)
Public propertyStopTimeConstraint Gets the stop time temporal processing constraint defined by call to SetTemporalConstraint(String, String, String).
Public propertySupportsTemporalProcessing Gets the flag indicating if this adapter supports temporal processing.
Public propertyTicksPerFrame Gets the number of ticks per frame.
(Inherited from ConcentratorBase)
Public propertyTimeResolution Gets or sets the maximum time resolution, in ticks, to use when sorting measurements by timestamps into their proper destination frame.
(Inherited from ConcentratorBase)
Public propertyTotalPublicationTime Gets the total number of seconds frames have spent in the publication process since concentrator started.
(Inherited from ConcentratorBase)
Public propertyTrackLatestMeasurements Gets or sets flag to start tracking the absolute latest received measurement values.
(Inherited from ConcentratorBase)
Public propertyUseLocalClockAsRealTime Gets or sets flag that determines whether or not to use the local clock time as real-time.
(Inherited from ConcentratorBase)
Public propertyUsePrecisionTimer Gets or sets flag that determines if precision timer should be used for frame publication.
(Inherited from ConcentratorBase)
Public propertyWaitHandleExpirations Gets the total number of wait handle expirations encountered due to delayed precision timer releases.
(Inherited from ConcentratorBase)
Top
Methods
 NameDescription
Protected methodAssignMeasurementToFrame Assigns IMeasurement to its associated IFrame.
(Inherited from ConcentratorBase)
Protected methodCreateNewFrame Creates a new IFrame for the given timestamp.
(Inherited from ConcentratorBase)
Public methodDispose Releases all the resources used by the ConcentratorBase object.
(Inherited from ConcentratorBase)
Protected methodDispose(Boolean) Releases the unmanaged resources used by the ActionAdapterBase object and optionally releases the managed resources.
(Overrides ConcentratorBaseDispose(Boolean))
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodExamineQueueState Examines the concentrator frame queue state of the ActionAdapterBase.
Protected methodFinalize Releases the unmanaged resources before the ConcentratorBase object is reclaimed by GC.
(Inherited from ConcentratorBase)
Public methodGetHashCode Serves as a hash function for the current ActionAdapterBase.
(Overrides ObjectGetHashCode)
Public methodGetShortStatus Gets a short one-line status of this ActionAdapterBase.
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodInitialize Initializes ActionAdapterBase.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Public methodMillisecondsFromRealTime Returns the deviation, in milliseconds, that the given number of ticks is from real-time (i.e., RealTime).
(Inherited from ConcentratorBase)
Protected methodOnConfigurationChanged Raises ConfigurationChanged event.
Protected methodOnDiscardingMeasurements Raises the DiscardingMeasurements event.
(Inherited from ConcentratorBase)
Protected methodOnInputMeasurementKeysUpdated Raises InputMeasurementKeysUpdated event.
Protected methodOnNewMeasurements Raises the NewMeasurements event.
Protected methodOnOutputMeasurementsUpdated Raises OutputMeasurementsUpdated event.
Protected methodOnProcessException(Exception)Obsolete.
Raises the ProcessException event.
(Inherited from ConcentratorBase)
Protected methodOnProcessException(MessageLevel, Exception, String, MessageFlags) Raises the ProcessException event.
(Inherited from ConcentratorBase)
Protected methodOnStatusMessage(String)Obsolete.
Raises the StatusMessage event.
Protected methodOnStatusMessage(String, Object)Obsolete.
Raises the StatusMessage event with a formatted status message.
Protected methodOnStatusMessage(MessageLevel, String, String, MessageFlags) Raises the StatusMessage event and sends this data to the Logger.
Protected methodOnUnpublishedSamples Raises the UnpublishedSamples event.
(Inherited from ConcentratorBase)
Protected methodPublishFrame Publish IFrame of time-aligned collection of IMeasurement values that arrived within the concentrator's defined LagTime.
(Inherited from ConcentratorBase)
Public methodQueueMeasurementsForProcessing Queues a collection of measurements for processing. Measurements are automatically filtered to the defined InputMeasurementKeys.
Public methodResetStatistics Resets the statistics of the ActionAdapterBase.
(Overrides ConcentratorBaseResetStatistics)
Public methodSecondsFromRealTime Returns the deviation, in seconds, that the given number of ticks is from real-time (i.e., RealTime).
(Inherited from ConcentratorBase)
Public methodSetInitializedState Manually sets the initialized state of the ActionAdapterBase.
Public methodSetTemporalConstraint Defines a temporal processing constraint for the adapter.
Public methodSortMeasurement Sorts the IMeasurement placing the data point in its proper IFrame.
(Inherited from ConcentratorBase)
Public methodSortMeasurements Sorts each IMeasurement placing each data point in its proper IFrame.
(Inherited from ConcentratorBase)
Public methodStart Starts the ActionAdapterBase or restarts it if it is already running.
(Overrides ConcentratorBaseStart)
Public methodStop Stops the ActionAdapterBase.
(Overrides ConcentratorBaseStop)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Protected methodTryGetMinimumNeededMeasurements Attempts to retrieve the minimum needed number of measurements from the frame (as specified by MinimumMeasurementsToUse)
Top
Events
 NameDescription
Public eventConfigurationChanged Event is raised when adapter is aware of a configuration change.
Public eventDiscardingMeasurements This event is raised if there are any measurements being discarded during the sorting process.
(Inherited from ConcentratorBase)
Public eventDisposed This event is raised when ConcentratorBase is disposed.
(Inherited from ConcentratorBase)
Public eventInputMeasurementKeysUpdated Event is raised when InputMeasurementKeys are updated.
Public eventNewMeasurements Provides new measurements from action adapter.
Public eventOutputMeasurementsUpdated Event is raised when OutputMeasurements are updated.
Public eventProcessException This event is raised if there is an exception encountered while attempting to process a frame in the sample queue.
(Inherited from ConcentratorBase)
Public eventStatusMessage Provides status messages to consumer.
Public eventUnpublishedSamples This event is raised every 5 seconds allowing consumer to track current number of unpublished seconds of data in the queue.
(Inherited from ConcentratorBase)
Top
Extension Methods
 NameDescription
Public Extension MethodGetEnumValueOrDefault Gets the enumeration constant for value, if defined in the enumeration, or a default value.
(Defined by EnumExtensions)
Public Extension MethodGetEnumValueOrDefaultT Gets the enumeration constant for this value, if defined in the enumeration, or a default value.
(Defined by EnumExtensions)
Public Extension MethodInputMeasurementKeys Returns the MeasurementKey values of the IAdapter input measurements.
(Defined by IAdapterExtensions)
Public Extension MethodOutputMeasurementKeys Returns the MeasurementKey values of the IAdapter output measurements.
(Defined by IAdapterExtensions)
Public Extension MethodTemporalConstraintIsDefined Returns true if IAdapter has a temporal constraint defined, i.e., either StartTimeConstraint or StopTimeConstraint is not set to its default value.
(Defined by IAdapterExtensions)
Top
Remarks
This base class acts as a measurement concentrator which time aligns all incoming measurements for proper processing. Derived classes are expected to override PublishFrame(IFrame, Int32) to handle time aligned measurements and call OnNewMeasurements(ICollectionIMeasurement) for any new measurements that may get created.
See Also