GXDBWRITE class

class GXDBWRITE(handle=0)[source]

GXDBWRITE class.

The GXDBWRITE class is used to open and write to databases. Large blocks of data are split into blocks and served up sequentially to prevent the over-use of virtual memory when VVs or VAs are being written to channels. Individual data blocks are limited by default to 1 MB (which is user-alterable). Data less than the block size are served up whole, one block per line.

__init__(handle=0)[source]
add_block(line)[source]

Add the current block of data.

Parameters:

line (int) – Line

New in version 9.0.

License: Geosoft Open License

Note: First, set up the data for each channel by copying values into the individual channel VVs and VAs.

add_channel(chan)[source]

Add a data channel to the GXDBWRITE object.

Parameters:

chan (int) – Channel handle (does not need to be locked, but can be.)

Returns:

Channel index. Use for getting the correct GXVV or GXVA object.

Return type:

int

New in version 9.0.

License: Geosoft Open License

commit()[source]

Commit remaining data to the database.

New in version 9.0.

License: Geosoft Open License

classmethod create(db)[source]

Create a GXDBWRITE object Add channels using the add_channel method.channel.

Parameters:

db (GXDB) – Database input

Returns:

GXDBWRITE object

Return type:

GXDBWRITE

New in version 9.0.

License: Geosoft Open License

classmethod create_xy(db)[source]

Create a GXDBWRITE object for a XY-located data. Add channels using the add_channel method.

Parameters:

db (GXDB) – Database input

Returns:

GXDBWRITE object

Return type:

GXDBWRITE

New in version 9.0.

License: Geosoft Open License

classmethod create_xyz(db)[source]

Create a GXDBWRITE object for a XYZ-located data. Add channels using the add_channel method.channel

Parameters:

db (GXDB) – Database input

Returns:

GXDBWRITE object

Return type:

GXDBWRITE

New in version 9.0.

License: Geosoft Open License

get_chan_array_size(chan)[source]

Get the number of columns of data in a channel.

Parameters:

chan (int) – Index of channel to access.

Returns:

The number of columns (array size) for a channel

Return type:

int

New in version 9.0.

License: Geosoft Open License

Note: Regular channels have one column of data. Array channels have more than one column of data. This function should be called to determine whether to use get_vv or get_va to access data for a channel.

get_db()[source]

Get the output GXDB handle from the GXDBWRITE object.

Returns:

GXDB handle

Return type:

GXDB

New in version 9.0.

License: Geosoft Open License

get_v_vx()[source]

Get the X channel GXVV handle.

Returns:

GXVV handle

Return type:

GXVV

New in version 9.0.

License: Geosoft Open License

Note: Only available for the CreateXY or CreateXYZ methods. The GXVV is filled anew for each block served up.

get_v_vy()[source]

Get the Y channel GXVV handle.

Returns:

GXVV handle

Return type:

GXVV

New in version 9.0.

License: Geosoft Open License

Note: Only available for the CreateXY or CreateXYZ methods. The GXVV is filled anew for each block served up.

get_v_vz()[source]

Get the Z channel GXVV handle.

Returns:

GXVV handle

Return type:

GXVV

New in version 9.0.

License: Geosoft Open License

Note: Only available for the CreateXY or CreateXYZ methods. The GXVV is filled anew for each block served up. If the Z channel is an array channel, the returned GXVV is the “base” GXVV of the GXVA and contains all items sequentially.

get_va(chan)[source]

Get the GXVA handle for an array channel.

Parameters:

chan (int) – Index of channel to access.

Returns:

GXVA handle

Return type:

GXVA

New in version 9.0.

License: Geosoft Open License

Note: Call only for array (multi-column) channels. You can call the get_chan_array_size function to find the number fo columns in a given channel, or you can call GXVA.col on the returned GXVA handle. The GXVA is filled anew for each block served up.

get_vv(chan)[source]

Get the GXVV handle for a channel.

Parameters:

chan (int) – Index of channel to access.

Returns:

GXVV handle

Return type:

GXVV

New in version 9.0.

License: Geosoft Open License

Note: Call only for single-column (regular) channels. You can call the get_chan_array_size function to find the number fo columns in a given channel. The GXVV is filled anew for each block served up.

is_null()[source]

Check if this is a null (undefined) instance

Returns:

True if this is a null (undefined) instance, False otherwise.

Return type:

bool

classmethod null()[source]

A null (undefined) instance of GXDBWRITE

Returns:

A null GXDBWRITE

Return type:

GXDBWRITE

test_func(ra)[source]

Temporary test function.

Parameters:

ra (GXRA) – GXRA handle to text file to import.

New in version 9.0.

License: Geosoft Open License

Note: Designed to import the “Massive.xyz” file, which has data in the format “X Y Z Data”.