OpenZGY/Python API and Internals (ALPHA)
Access seismic data stored in ZGY format.
Classes | Functions
openzgy.api Namespace Reference

User visible apis are here. More...

Classes

class  _internal
 Explicit control of imported symbols. More...
 
class  ProgressWithDots
 Simple progress bar. More...
 
class  SampleDataType
 Sample data type used in the public API. More...
 
class  UnitDimension
 Horizontal or vertical dimension as used in the public API. More...
 
class  ZgyMeta
 Base class shared betewwn ZgyReader and ZgyWriter. More...
 
class  ZgyMetaAndTools
 Base class shared betewwn ZgyReader and ZgyWriter. More...
 
class  ZgyReader
 Main entry point for reading ZGY files. More...
 
class  ZgyUtils
 Operations other than read and write. More...
 
class  ZgyWriter
 Main API for creating ZGY files. More...
 

Functions

def ZgyCompressFactory (name, *args, **kwargs)
 
def ZgyKnownCompressors ()
 
def ZgyKnownDecompressors ()
 

Detailed Description

User visible apis are here.

This file contains the public OpenZGY API.

The API is modeled roughly after the API exposed by the Python wrapper
around the existing C++ ZGY-Public API. This is probably just as good
a starting point than anything else. And it makes testing simpler for
those tests that compare the old and new behavior.

    api.ZgyMeta:

        * Has a private reference to a impl.meta.ZgyInternalMeta instance.
        * Contains a large number of properties exposing meta data,
          most of which will present information from the ZgyInternalMeta
          in a way that is simpler to use and doesn't depend on the
          file version.
        * End users will access methods from this class. Most likely
          via the derived ZgyReader and ZgyWriter classes. The end users
          might not care that there is a separate base class.

    api.ZgyMetaAndTools(ZgyMeta):

        * Add coordinate conversion routines to a ZgyMeta instance.

    api.ZgyReader(ZgyMetaAndTools): # + read, readconst, close
    api.ZgyWriter(ZgyMetaAndTools): # + write, writeconst, finalize, close

        * Has a private reference to a impl.meta.ZgyInternalBulk instance.
        * Add bulk read and write functionality, forwarding the requests
          to the internal bulk instance.
        * These classes with their own and inherited methods and properties
          comprise the public OpenZGY API.
        * Currently the ZgyWriter does not expose the bulk read() function
          but it does allow accessing all the metadata. Allowing read()
          might be added later if it appears to be useful.
          In practice this just means to let ZgyWriter inherit ZgyReader.

Function Documentation

◆ ZgyCompressFactory()

def openzgy.api.ZgyCompressFactory (   name,
args,
**  kwargs 
)
Look up a compression algorithm by name and instanciate a compressor,
passing the required compression parameters. Using this approach
reduces the coupling between client code and the compressor.

◆ ZgyKnownCompressors()

def openzgy.api.ZgyKnownCompressors ( )
Return the names of all compressors known to the system.
This is primarily for logging, but might in principle be used
in a GUI to present a list of compressors to choose from.
The problem with that is how to handle the argument list.

◆ ZgyKnownDecompressors()

def openzgy.api.ZgyKnownDecompressors ( )
Return the names of all compressors known to the system.
This is primarily for logging.