type TSignalBrowse = class(TAnalysis);
Creates and navigates file overview files.
Use the component to create peak overview files of much bigger signal files. This peak files can be used for quick navigation (browsing) through a few hundred MB long files. With a smart charting tool, a peak file allows you to zoom in on one sample and also zoom out to view the entire file without noticing any delays when drawing. A typical overview file of a 200 MB long wav file is 4 MB long and is created within 5 seconds. The component supports threading, so that you can interrupt the process running in the background. The component also automatically switches between the peak and signal file, depending on the amount of data that you want to read (presumably for screen display). The overview data is a series of Min and Max values for the specified region. This must be taken in to account when computing time span, because the sampling frequency is virtually changed by 2x in compare to the raw signal.
Properties
| Name | Type | Description |
|---|---|---|
| Active | Boolean | Set active to false to suppress the propagation of the Pull request and the subsequent call to the Update method. |
| BlockAssign | Boolean | Block streaming of specific properties when storing only a "template". |
| ChannelCount | Integer | Get the number of channels. |
| ChannelMax | TVec | Stores the maximum values for each channel. |
| ChannelMin | TVec | Stores the minimum values for each channel. |
| Complex | Boolean | Set this property to true, to request computation using complex numbers. |
| Continuous | Boolean | If True, the component will pass on the udpate request to the connected component. |
| Data | TVec | Holds the result of the overview request triggered by setting the RecordPosition. |
| Dt | Double | Get the sample time. |
| EditorActive | Boolean | Returns True, if the component editor is displayed. |
| FloatPrecision | TMtxFloatPrecision | Set this property to request computation in 32bit/64bit precision with real/complex numbers. |
| FloatPrecisionLock | Boolean | Set this property to true to lock changes to FloatPrecision property. |
| Increment | Integer | Defines the pixel downsampling factor for the peak file. |
| Input | TAnalysis | Connector property to obtain a pointer to the TSignal component holding the data to be processed. |
| IsDouble | Boolean | Set this property to false, to request computation in 32bit floating point precision, 64bit, if true. |
| ItemNumber | Integer | Number to label the object when it is an item in the List. |
| OnAfterUpdate | TNotifyEvent | The event is triggered after the call to the Update method. |
| OnBeforeUpdate | TNotifyEvent | The event is triggered just before the call to the Update method. |
| OnDisplayUpdate | TNotifyEvent | The event is triggered after the OnAfterUpdate event. Use this event to update any associated charts or graphs or result tables. |
| OnGetInput | TNotifyEvent | If the Input property is not assigned, the component will call OnGetInput. |
| OnNotifyUpdate | TNotifyEvent | The event is called after a call to InternalUpdate, OnAfterUpdate and OnDisplayUpdate from within the Update method. |
| OnParameterUpdate | TNotifyEvent | The event is triggered when ParamUpdate method is called. The ParamUpdate method is usually called by component editors when a value was changed by the user and the editor was "Live". |
| OnProgressUpdate | TProgressUpdateEvent | Thread event triggered when starting, running and stopping the thread. |
| OverviewRepositoryPath | string | Location where all peak files will be stored. |
| PipeState | TPipeState | Returns the state of the pipe after the last update. |
| ProgressRuntime | TMtxProgressRuntime | A pointer to the thread object. The object is owned by Self. |
| RecordNumber | Integer | Number of the current record within the signal file. |
| RecordPosition | Int64 | Set the property to specify position in samples of the read cursor within the current record. |
| RecordTime | Double | Length of the current record in seconds. |
| RecordTimePosition | Double | Set the property to specify position in seconds of the read cursor within the current record. |
| Reference | TReferenceList | Stores a list of components that have to be notified, when this component is destroyed. |
| SamplingFrequency | Double | Get the sampling frequency. |
| SamplingTime | Double | Get the sampling time. |
| SignalFile | TSignalRead | A pointer to the signal file handling component. The object is owned by Self. |
| SpanLength | Int64 | Defines the count of samples to be streamed from the signal file. |
| SpanLimit | Int64 | Defines the target number of vertical pixel lines to be displayed on the screen. |
| SpanTime | Double | Defines the length in seconds of samples to be obtained from the file. |
| SuspendNotifyUpdate | Boolean | Set this property to True, to prevent calling OnNotifyUpdate from the Update Method. |
| Threaded | Boolean | Set it to True, if you want the processing to run within a separate thread. |
| UsesInputs | Boolean | Set it to True to indicate, that valid signals will be connected to the Input or Inputs properties. |
Methods
| Name | Description |
|---|---|
| AllowStreaming | Returns the negatated value of BlockAssign. |
| Assign | Assign values of all published properties from Source. |
| AssignTemplate | Assign values of "template-like" published properties from Source. |
| CloseFile | Close the opened data file. |
| CreateBrowseFile | Create browse file from file named AFileAname. |
| EditorClass | To be overriden in descendanr classses. |
| InputsDirty | If all Inputs[i] are dirty the function returns true. |
| InternalPull | When called, the method will pass Update requests recursively to all connected objects. |
| Invalidate | Notifies all connected components that this component has fresh data. |
| IsOverview | Returns True, if the data read by the component comes from the overview file. |
| LoadFromStream | Load the component from Src stream. |
| LoadFullRecord | Load the entire file to the Data property. |
| LoadTemplateFromFile | Load a template from file. |
| LoadTemplateFromStream | Load a template from stream. |
| OpenBrowseFile | Open browse file for the file named AFilename. |
| ParamUpdate | The method can be assigned to some other component even handler, as a notification that a parameter has changed and that Self should consider a recalculation. |
| PipeReset | Recursively processes all connected components backward and calls Reset method. |
| Pull | Request recalculation of the entire chain of all connected components. |
| PullUntilEnd | Calls Pull until pipeEnd is returned. |
| Reset | Reset is called after loading the data from stream or file. |
| SaveTemplateToFile | Save template to file. |
| SaveTemplateToStream | Save template to stream. |
| SaveToStream | Save the component to Dst stream. |
| SpanUpdate | Updates the data in the Data property according to the updated SpanLimit. |
| Update | Request recalculation of the data and place the result in Self. |
| UpdateNotify | Call this method only, if SuspendNotifyUpdate is True. |