# Path: blimpy/io/base_reader.py
# GIGA = 1024 ** 3
# HIRES_THRESHOLD = 2**20
# class Reader(object):
#     def __init__(self):
#     def _setup_selection_range(self, f_start=None, f_stop=None, t_start=None, t_stop=None, init=False):
#         def _dump_parms():
#     def _init_empty_selection(self):
#     def _setup_dtype(self):
#     def _calc_selection_size(self):
#     def _calc_selection_shape(self):
#     def _setup_chans(self):
#     def _setup_freqs(self):
#     def populate_timestamps(self,update_header=False):
#     def populate_freqs(self):
#     def adjust_n_coarse_chan(self, n_coarse_chan, nchans):
#     def calc_n_coarse_chan(self, chan_bw=None):
#     def calc_n_blobs(self, blob_dim):
#     def warn_memory(self, name, size):
#     def isheavy(self):


import os
import sys
import h5py
import numpy as np
from astropy.coordinates import Angle
from blimpy.io.base_reader import Reader, logger, GIGA
r'''Reader for HDF5 files'''




def oops(msg):
    print("\n*** Oops, hdf_reader: {} ***\n".format(msg))
    sys.exit(86)



# Path: blimpy/io/base_reader.py
# GIGA = 1024 ** 3
# HIRES_THRESHOLD = 2**20
# class Reader(object):
#     def __init__(self):
#     def _setup_selection_range(self, f_start=None, f_stop=None, t_start=None, t_stop=None, init=False):
#         def _dump_parms():
#     def _init_empty_selection(self):
#     def _setup_dtype(self):
#     def _calc_selection_size(self):
#     def _calc_selection_shape(self):
#     def _setup_chans(self):
#     def _setup_freqs(self):
#     def populate_timestamps(self,update_header=False):
#     def populate_freqs(self):
#     def adjust_n_coarse_chan(self, n_coarse_chan, nchans):
#     def calc_n_coarse_chan(self, chan_bw=None):
#     def calc_n_blobs(self, blob_dim):
#     def warn_memory(self, name, size):
#     def isheavy(self):


# Path: blimpy/io/hdf_reader.py
import os
import sys
import h5py
import numpy as np
from astropy.coordinates import Angle
from blimpy.io.base_reader import Reader, logger, GIGA

r'''Reader for HDF5 files'''




def oops(msg):
    print("\n*** Oops, hdf_reader: {} ***\n".format(msg))
    sys.exit(86)



def examine_h5(h5):