| Prototype: |
| int ewdb_api_AssociateChanWithComp( |
EWDBid idComp, EWDBid idChan, double tStart, double tEnd, EWDBid * pidCompT, EWDBid * pidChanT); |
|
| Source File: |
src/oracle/schema-working/src/infra/ewdb_api_AssociateChanWithComp.c |
| Description: |
Function creates an association between a channel and a component for a specified time interval. The function can fail if a relationship exists between the specified component and an alternative channel, or between the specified channel and an alternative component, during an overlapping time period.
NOTE THIS FUNCTION IS UNSUPPORTED. Please contact someone in the Earthworm DB development group if you need to set specific component/channel time based relationships. ewdb_internal_SetChanParams() is also available(and not recommended for use).
The relationship between a component and a channel is complex to implement. I believe the issues that cause the pidCompT and pidChanT variables to be written to, have been cleared up, and they are no longer applicable; however, I am not sure of this, so please be sure to pass valid pointers until better documentation can be made available. davidk 2000/05/04. Davidk 07/27/2001
|
| Note: |
The following is believed to be out of date, but is the best information available at this time:
A channel can be associated with at most one component at a given time. If the channel that the caller is trying to bind a component to is already bound to another component during an overlapping time interval, then the call will fail, and the idComp of the first component found that has an overlapping association with that channel will be returned. Currently, if there are any existing chan relationships during the time period described by tStart,tEnd, for the given idChan, then the idChanT of the first ChanT relationship record will be returned in pidChanT along with an error condition. Davidk 07/27/2001 |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| idComp |
EWDBid |
The DB identifier of the component(Comp) record the caller wants to associate with a channel. |
| idChan |
EWDBid |
The DB identifier of the channel(Chan) record the caller wants to associate with a component. |
| tStart |
double |
The start of the time interval for which the caller wants to associate the component and channel. Expressed as seconds since 1970. |
| tEnd |
double |
The end of the time interval for which the caller wants to associate the component and channel. Expressed as seconds since 1970. |
| pidCompT |
EWDBid * |
A pointer to a EWDBid where the function will write information if the call fails. |
| pidChanT |
EWDBid * |
A pointer to a EWDBid where the function will write information if the call fails. |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_CreateChannel( |
EWDBid * pidChan, char * szComment); |
|
| Description: |
Function creates a channel in the DB. A channel identifies the entire path of a seismic signal from ground motion to completed waveform. The function writes the DB ID of the newly created channel to pidChan. Because most of a channel's properties are variable over time, this function does not take much as input, as it only creates a channel with its fixed attribute(s). This function should be used to generate a new idChan that can be used in conjunction with other functions for creating components and setting time based attributes of components and channels. |
| Note: |
THIS FUNCTION IS UNSUPPORTED! A channel(Chan) represents a unique data path from ground motion to finished waveform. It is associated with a Component sensor, and all of the signal altering devices that the sensor's signal passes through before becoming a finished set of waveforms. |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pidChan |
EWDBid * |
A pointer to a EWDBid where the function will write The DB identifier of the Channel it created. |
| szComment |
char * |
Optional comment regarding the component. It may be blank, and should be a maximum of 4k characters. It may not be NULL! |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_CreateCompTForSCNLT( |
EWDBid * pidChan, char * szSta, char * szComp, char * szNet, char * szLoc, double tStart, double tEnd); |
|
| Description: |
This function is misnamed. It actually creates an association between an SCNL and a channel for a given time period. It is called CreateCompTForSCNLT() because it creates a component time interval(CompT) record as part of the process of creating a component and a channel, and associating the two together for a given time period. The function returns the idChan of the newly created channel with which the SCNL has been associated for the supplied time interval. The DB ID of the component(Comp) and the component time interval(CompT) are not returned. The caller can retrieve the idComp and idCompT by calling ewdb_api_GetComponentInfo() with the idChan of the newly created channel, and tStart or tEnd. The caller can change the location/orientation of the component by calling ewdb_api_SetCompParams() after calling ewdb_api_CreateCompTForSCNLT(). |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pidChan |
EWDBid * |
Pointer to an EWDBid where the function will write the idChan of the newly created channel, associated with the SCNL. |
| szSta |
char * |
The Station Code of the SCNL. |
| szComp |
char * |
The Component(Channel) Code of the SCNL. |
| szNet |
char * |
The Network Code of the SCNL. |
| szLoc |
char * |
The Location Code of the SCNL. |
| tStart |
double |
The start of the validity time range for the given SCNL. Seconds since 1970. |
| tEnd |
double |
The end of the validity time range for the given SCNL. Seconds since 1970. |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_CreateComponent( |
EWDBid * pidComp, char * sSta, char * sComp, char * sNet, char * sLoc, char * szComment); |
|
| Description: |
Function creates a component sensor in the DB with an SCN and optionally L. It associates the component with a site identified by (Sta,Net). It returns the DB ID of the newly created component. If a component already exists with the specified SCNL, then a new component is not created and the idComp of the existing component is returned. |
| Note: |
A component(Comp) represents a seismic sensor in the field. It is represented by SCN and optionaly L, and has location properties(Lat,Lon, and Elev) and orientation properties(Azimuth and Dip).
If a component with matching SCNL already exists, then the call will succeed and return the idComp of the existing component. A new component will not be created!
The comment is currently ignored. |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pidComp |
EWDBid * |
A pointer to a EWDBid where the function will write The DB identifier of the Component it created. |
| sSta |
char * |
SEEDlike Station code for the component. It may not be blank or NULL, and should be a maximum of 7 characters. |
| sComp |
char * |
SEEDlike Component code for the component. The field may not be blank or NULL and should be a maximum of 9 characters. |
| sNet |
char * |
SEEDlike Network code for the component. It may not be blank or NULL and should be a maximum of 9 characters. |
| sLoc |
char * |
Optional SEEDlike Location code for the component. It may not be blank or NULL and should be a maximum of 9 characters. |
| szComment |
char * |
Optional comment regarding the component. May be blank, and should be a maximum of 4k characters. It may not be NULL! |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
|
| Description: |
Function inserts a caller provided poles/zeroes based transform function into the DB. The transform Function is used to transform recorded waveforms back into ground motion. The function writes the DB id of the newly created transform function to pidCookedTF. |
| Note: |
The transform function can be associated with multipe channel time intervals using EWDB_SetTransformFuncForChanT(). |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pidCookedTF |
EWDBid * |
Pointer to an EWDBid where the function will write the DB ID of the newly created poles and zeroes based cooked transform function(CookedTF). |
| pCookedTF |
EWDB_TransformFunctionStruct * |
Pointer to a caller filled EWDB_TransformFunctionStruct that contains the transform function and associated information that the caller wants to insert into the DB. |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_GetStationList( |
double MinLat, double MaxLat, double MinLon, double MaxLon, double ReqTime, EWDB_StationStruct * pBuffer, int * pNumStationsFound, int * pNumStationsRetrieved, int BufferLen); |
|
| Description: |
This function retrieves a list of component/channels given a lat/lon box and time of interest. Component attributes for the given time are included. (MinLat,MinLon) and (MaxLat,MaxLon) define two vertices of a box. The function retrieves the list of stations within the box. |
| Note: |
Be careful of the effects of negative Lat/Lon on Min/Max!!
Use ewdb_api_GetStationListWithoutLocation() to retrieve all stations available in the database at a given time. It does not impose a lat/lon box. |
RETURN CODE INFO |
| Return Type: |
int |
| Return Value |
Description |
| EWDB_RETURN_FAILURE |
Returned when the caller passes an invalid set of criteria. |
| EWDB_RETURN_SUCCESS |
Success. |
| EWDB_RETURN_WARNING |
Partial success. A list of stations was retrieved, but the caller's buffer was not large enough to accomadate all of the stations found. See pNumStationsFound for the number of stations found and pNumStationsRetrieved for the number of stations placed in the caller's buffer. |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| MinLat |
double |
Minimum lattitude coordinate of stations to be retrieved. Lattitude is expressed in degrees. |
| MaxLat |
double |
Maximum lattitude coordinate of stations to be retrieved. Lattitude is expressed in degrees. |
| MinLon |
double |
Minimum longitude coordinate of stations to be retrieved. Longitude is expressed in degrees. |
| MaxLon |
double |
Maximum longitude coordinate of stations to be retrieved. Longitude is expressed in degrees. |
| ReqTime |
double |
Time of interest. The list of active components changes over time. Reqtime identifies the historical point in time for which the caller wants a station list. Time is expressed in seconds since 1970. |
| pBuffer |
EWDB_StationStruct * |
Buffer allocated by the caller, in which the function will place information for each of the stations matching the caller's criteria. |
| pNumStationsFound |
int * |
Pointer to an integer where the function will write the number of stations found to match the calller's criteria. |
| pNumStationsRetrieved |
int * |
Pointer to an integer where the function will write the number of arrivals placed in the callers buffer(pBuffer). |
| BufferLen |
int |
Size of the pBuffer buffer as a multiple of EWDB_StationStruct. (example: 15 structs) |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_GetStationListWithoutLocation( |
double ReqTime, EWDB_StationStruct * pBuffer, int * pNumStationsFound, int * pNumStationsRetrieved, int BufferLen); |
|
| Description: |
This function retrieves a list of component/channels given a time of interest. This function is the same as ewdb_api_GetStationList(), except that it does not impose a Lat/Lon box. |
RETURN CODE INFO |
| Return Type: |
int |
| Return Value |
Description |
| EWDB_RETURN_FAILURE |
Returned when the caller passes an invalid set of criteria. |
| EWDB_RETURN_SUCCESS |
Success. |
| EWDB_RETURN_WARNING |
Partial success. A list of stations was retrieved, but the caller's buffer was not large enough to accomadate all of the stations found. See pNumStationsFound for the number of stations found and pNumStationsRetrieved for the number of stations placed in the caller's buffer. |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| ReqTime |
double |
Time of interest. The list of active components changes over time. Reqtime identifies the historical point in time for which the caller wants a station list. Time is expressed in seconds since 1970. |
| pBuffer |
EWDB_StationStruct * |
Buffer allocated by the caller, in which the function will place information for each of the stations matching the caller's criteria. |
| pNumStationsFound |
int * |
Pointer to an integer where the function will write the number of stations found to match the calller's criteria. |
| pNumStationsRetrieved |
int * |
Pointer to an integer where the function will write the number of arrivals placed in the callers buffer(pBuffer). |
| BufferLen |
int |
Size of the pBuffer buffer as a multiple of EWDB_StationStruct. (example: 15 structs) |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
|
| Source File: |
src/oracle/schema-working/src/infra/ewdb_api_GetTransformFunctionForChan.c |
| Description: |
Function retrieves the poles/zeroes based transform function, gain and sample rate for a given channel and time. The transform Function is used to transform recorded waveforms back into ground motion. |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| idChan |
EWDBid |
The DB ID of the channel for which the caller wants to retrieve a cooked transform function. |
| tTime |
time_t |
Point in time for which the caller wants a cooked transform function for the channel. A time is required because the transform function varies over time as device properties are changed or the channel is altered. |
| pChanCTF |
EWDB_ChanTCTFStruct * |
Pointer to a caller allocated EWDB_ChanTCTFStruct where the function will write the cooked transform function and associated "channel specific response information" requested by the caller. |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_GetidChansFromSCNLT( |
EWDBid * pBuffer, char * IN_szSta, char * IN_szComp, char * IN_szNet, char * IN_szLoc, double * IN_tOff, double * IN_tOn, int * pNumChansFound, int * pNumChansRetrieved, int BufferLen); |
|
| Description: |
The function retrieves a list of idChans that are valid for the given SCNL and time range. Wildcards ("*") may be used for any of the S, C, N, and L codes. The function will return all idChans that are associated with the components that have codes matching the given SCNL, during a time period that overlaps with (IN_tOn - IN_tOff). |
RETURN CODE INFO |
| Return Type: |
int |
| Return Value |
Description |
| EWDB_RETURN_FAILURE |
Fatal error. See logfile for details. |
| EWDB_RETURN_SUCCESS |
Success. |
| EWDB_RETURN_WARNING |
Partial success. A list of idChans was retrieved, but the caller's buffer was not large enough to accomadate all of the idChans found. See pNumChansFound for the number of idChans found and pNumChansRetrieved for the number of chans placed in the caller's buffer. |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pBuffer |
EWDBid * |
Buffer allocated by the caller, where the function will write the list idChans that match the given SCNL and Time range. |
| IN_szSta |
char * |
SEEDlike Station code for the SNCL. It may not be blank or NULL, and should be a maximum of 7 characters.
"*" may be used as a wildcard that will match all Station codes. |
| IN_szComp |
char * |
SEEDlike Component code for the SCNL. The field may not be blank or NULL and should be a maximum of 9 characters.
"*" may be used as a wildcard that will match all Component codes. |
| IN_szNet |
char * |
SEEDlike Network code for the SCNL. It may not be blank or NULL and should be a maximum of 9 characters.
"*" may be used as a wildcard that will match all Network codes. |
| IN_szLoc |
char * |
Optional SEEDlike Location code for the component. It may not be NULL (Use a blank string "" to indicate a NULL location code. It should be a maximum of 9 characters.
"*" may be used as a wildcard that will match all Location codes. |
| IN_tOff |
double * |
End time of the time range of interest. Expressed as seconds since 1970. |
| IN_tOn |
double * |
Start time of the time range of interest. Expressed as seconds since 1970. |
| pNumChansFound |
int * |
Pointer to an integer where the function will write the number of idChans found to match the SCNL and time range. |
| pNumChansRetrieved |
int * |
Pointer to an integer where the function will write the number of idChans placed in the callers buffer(pBuffer). |
| BufferLen |
int |
Size of the pBuffer buffer as a multiple of EWDBid. (example: 15 EWDBids) |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_SetCompParams( |
EWDB_StationStruct * pStation, double tOn, double tOff, EWDBid * pidCompT, char * szComment); |
|
| Description: |
Function sets the variable parameters of a component for a given time interval. The caller specifies the component by filling in the SCNL codes in pStation. Variable parameters include (lat,lon), elevation, and the orientation of the component. It will write the DB ID of the newly created/updated Component Time Interval record to to pidCompT. |
| Note: |
pStation->idComp is ignored by this function. The component must be specified using the SCNL codes, not by a DB idComp. |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| pStation |
EWDB_StationStruct * |
Pointer to a EWDB_StationStruct that contains the parameters that the caller wishes to set for the component for the given time interval. |
| tOn |
double |
The start of the time interval for which the caller wants to the component parameters to be valid. Expressed as seconds since 1970. |
| tOff |
double |
The end of the time interval for which the caller wants to the component parameters to be valid. Expressed as seconds since 1970. |
| pidCompT |
EWDBid * |
A pointer to a EWDBid where the function will write the DB ID of the updated or newly created Component Time Interval. |
| szComment |
char * |
Optional comment regarding the Component Time Interval. It may be blank, and should be a maximum of 4k characters. It may not be NULL! |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |
| Prototype: |
| int ewdb_api_SetTransformFuncForChanT( |
EWDBid idChanT, double dGain, EWDBid idCookedTF, double dSampRate); |
|
| Description: |
Function associates an existing transform function with a Channel for a given time period. Records the gain and sample-rate that are specific to the channel. |
| Note: |
To create a transform function for a channel, you must call two API functions. You must first call ewdb_api_CreateTransformFunction() to create the transfer function. Then you must call ewdb_api_SetTransformFuncForChanT() (using the idCookedTF that you got back from the create function call) for each "channel time interval" with which you wish to associate the transfer function. |
RETURN CODE INFO |
| Return Type: |
int |
|
PARAMETER INFO |
| Parameter |
Type |
Description |
| idChanT |
EWDBid |
The DB identifier of the channel time interval(ChanT) with which the caller wants to associate a Poles and Zeroes transform function(CookedTF). |
| dGain |
double |
The signal gain for the channel time interval. Expressed as a double floating point multiplicative scalar. |
| idCookedTF |
EWDBid |
The DB identifier of the existing poles and zeroes based cooked transfer function, that the caller wants to associate with a given channel time interval(ChanT). |
| dSampRate |
double |
Digital sample rate of the data spouted out of the channel. Expressed as samples per second. |
|
|
| Group: |
EWDB_API_LIB |
| Sub Group: |
COOKED_INFRASTRUCTURE_API |
| Language: |
C |
| Location: |
./src/oracle/schema-working/src/include/ewdb_ora_api.h |