Seg3D  2.4
Seg3D is a free volume segmentation and processing tool developed by the NIH Center for Integrative Biomedical Computing at the University of Utah Scientific Computing and Imaging (SCI) Institute.
Public Types | Public Member Functions | List of all members
Core::LargeVolumeSchema Class Reference
Inheritance diagram for Core::LargeVolumeSchema:

Public Types

typedef IndexVector::index_type index_type
 

Public Member Functions

bool load (std::string &error)
 
bool save (std::string &error) const
 
size_t get_nx () const
 GET_NX.
 
size_t get_ny () const
 GET_NY.
 
size_t get_nz () const
 GET_NZ.
 
boost::filesystem::path get_dir () const
 
const IndexVectorget_size () const
 
const Pointget_origin () const
 
const Vectorget_spacing () const
 
const IndexVectorget_brick_size () const
 
const IndexVectorget_effective_brick_size () const
 
size_t get_overlap () const
 
DataType get_data_type () const
 
bool is_compressed () const
 
bool is_little_endian () const
 
const IndexVectorget_level_downsample_ratio (size_t idx) const
 
size_t get_num_levels () const
 
double get_min () const
 
double get_max () const
 
void set_dir (const boost::filesystem::path &dir)
 
void set_parameters (const IndexVector &size, const Vector &spacing, const Point &origin, const IndexVector &brick_size, size_t overlap, DataType datatype)
 
void set_compression (bool compression)
 
void set_min_max (double min, double max) const
 
void enable_downsample (bool downsample_x, bool downsample_y, bool downsample_z)
 
void compute_levels ()
 
IndexVector get_level_size (index_type level) const
 
Vector get_level_spacing (index_type level) const
 
IndexVector get_level_layout (index_type level) const
 
size_t compute_level_num_bricks (index_type level) const
 
GridTransform get_grid_transform () const
 
boost::filesystem::path get_brick_file_name (const BrickInfo &bi)
 Get the file name of the brick.
 
IndexVector get_brick_size (const BrickInfo &bi) const
 
GridTransform get_brick_grid_transform (const BrickInfo &bi) const
 GET_GRID_TRANSFORM.
 
std::vector< BrickInfoget_bricks_for_region (const BBox &region, double pixel_size, SliceType slice, const std::string &load_key)
 
std::vector< BrickInfoget_bricks_for_volume (Transform world_viewport, int width, int height, SliceType slice, const BBox &effective_bbox, double depth, const std::string &load_key)
 
bool get_parent (const BrickInfo &bi, BrickInfo &parent)
 GET_PARENT.
 
bool get_children (const BrickInfo &bi, SliceType slice, double depth, std::vector< BrickInfo > &children)
 GET+CHILDREN.
 
bool get_level_start_and_end (const GridTransform &region, int level, IndexVector &start, IndexVector &end, GridTransform &gt)
 GET_LEVEL_START_AND_END.
 
bool insert_brick (DataBlockHandle volume, DataBlockHandle brick, IndexVector offset, IndexVector clip_start, IndexVector clip_end)
 
bool insert_brick (DataBlockHandle volume, DataBlockHandle brick, IndexVector offset)
 
bool read_brick (DataBlockHandle &data_block, const BrickInfo &bi, std::string &error) const
 
bool write_brick (DataBlockHandle data_block, const BrickInfo &bi, std::string &error) const
 
bool reprocess_brick (const BrickInfo &bi, std::string &error) const
 
bool append_brick_buffer (DataBlockHandle data_block, size_t z_start, size_t z_end, const size_t offset, const BrickInfo &bi, std::string &error) const
 

Member Function Documentation

bool Core::LargeVolumeSchema::append_brick_buffer ( DataBlockHandle  data_block,
size_t  z_start,
size_t  z_end,
const size_t  offset,
const BrickInfo bi,
std::string &  error 
) const

APPEND_BRICK_BUFFER Append data to a brick to disk

size_t Core::LargeVolumeSchema::compute_level_num_bricks ( index_type  level) const

COMPUTE_LEVEL_NUM_BRICKS Compute how many bricks are located at a certassin level

void Core::LargeVolumeSchema::compute_levels ( )

COMPUTE LEVELS Compute the levels and downsample ratios based on size, spacing, brick size and overlap

void Core::LargeVolumeSchema::enable_downsample ( bool  downsample_x,
bool  downsample_y,
bool  downsample_z 
)

ENABLE_DOWNSAMPLE Enable down sample in certain directions only

const IndexVector & Core::LargeVolumeSchema::get_brick_size ( ) const

GET_BRICK_SIZE Get the bricksize of the data

IndexVector Core::LargeVolumeSchema::get_brick_size ( const BrickInfo bi) const

GET_BRICK_SIZE Get the size + overlap of the brick

std::vector< BrickInfo > Core::LargeVolumeSchema::get_bricks_for_region ( const BBox &  region,
double  pixel_size,
SliceType  slice,
const std::string &  load_key 
)

GET_BRICKS_FOR_REGION Get bricks for a certain region

DataType Core::LargeVolumeSchema::get_data_type ( ) const

GET_DATA_TYPE Get the type of the underlying data

const IndexVector & Core::LargeVolumeSchema::get_effective_brick_size ( ) const

GET_EFFECTIVE_BRICK_SIZE Get the bricksize of the data minus overlap

GridTransform Core::LargeVolumeSchema::get_grid_transform ( ) const

GET_GRID_TRANSFORM Total rtansform of the complete volume

const IndexVector & Core::LargeVolumeSchema::get_level_downsample_ratio ( size_t  idx) const

GET_LEVEL_DOWNSAMPLE_RATIO Get the downsample ratio for each direction per level

IndexVector Core::LargeVolumeSchema::get_level_layout ( index_type  level) const

COMPUTE_LEVEL_LAYOUT Get the loayout of each level

IndexVector Core::LargeVolumeSchema::get_level_size ( index_type  level) const

COMPUTE_LEVEL_SIZE Get the size of a level (without overlaps)

Vector Core::LargeVolumeSchema::get_level_spacing ( index_type  level) const

COMPUTE_LEVEL_SPACING Get the spacing of each level

double Core::LargeVolumeSchema::get_max ( ) const

GET_MAX Get minimum value of dataset

double Core::LargeVolumeSchema::get_min ( ) const

GET_MIN Get minimum value of dataset

size_t Core::LargeVolumeSchema::get_num_levels ( ) const

GET_NUM_LEVELS Get the number of resolution levels in the data

const Point & Core::LargeVolumeSchema::get_origin ( ) const

GET_ORIGIN Get origin location of the data (we assume node centered grid)

size_t Core::LargeVolumeSchema::get_overlap ( ) const

GET_OVERLAP Get the overlap between the bricks, .i.e each brick has a border of this size surrounding the full brick

const Vector & Core::LargeVolumeSchema::get_spacing ( ) const

GET_SPACING Get the spacing of the data at highest resolution

bool Core::LargeVolumeSchema::insert_brick ( DataBlockHandle  volume,
DataBlockHandle  brick,
IndexVector  offset,
IndexVector  clip_start,
IndexVector  clip_end 
)

INSERT_BRICK Insert a brick while doing clipping

bool Core::LargeVolumeSchema::insert_brick ( DataBlockHandle  volume,
DataBlockHandle  brick,
IndexVector  offset 
)

INSERT_BRICK Insert a brick into datavolume

bool Core::LargeVolumeSchema::is_compressed ( ) const

IS_COMPRESSED Check whether the data is compressed

bool Core::LargeVolumeSchema::is_little_endian ( ) const

IS_LITTLE_ENDIAN Check whether data is little endian

bool Core::LargeVolumeSchema::load ( std::string &  error)

LOAD Load a large volume text file

bool Core::LargeVolumeSchema::read_brick ( DataBlockHandle &  data_block,
const BrickInfo bi,
std::string &  error 
) const

READ_BRICK Read in a brick from disk

bool Core::LargeVolumeSchema::reprocess_brick ( const BrickInfo bi,
std::string &  error 
) const

REPROCESS_BRICK As bricks are written in parallel, they may end up all over the drive

bool Core::LargeVolumeSchema::save ( std::string &  error) const

SAVE Save a large volume text file

void Core::LargeVolumeSchema::set_compression ( bool  compression)

SET_COMPRESSION Set whether data is compressed

void Core::LargeVolumeSchema::set_dir ( const boost::filesystem::path &  dir)

SET_DIR Set large volume dir

void Core::LargeVolumeSchema::set_min_max ( double  min,
double  max 
) const

SET_MIN_MAX Set min and max values for the dataset

void Core::LargeVolumeSchema::set_parameters ( const IndexVector size,
const Vector spacing,
const Point origin,
const IndexVector brick_size,
size_t  overlap,
DataType  datatype 
)

SET_PARAMETERS Set bricking parameters

bool Core::LargeVolumeSchema::write_brick ( DataBlockHandle  data_block,
const BrickInfo bi,
std::string &  error 
) const

WRITE_BRICK Write a brick to disk


The documentation for this class was generated from the following files: