View on GitHub

Vistle

Distributed Data-parallel Scientific Visualization in VR

Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
vistle Namespace Reference

Namespaces

namespace  cell
 
namespace  Celltree
 
namespace  crypto
 
namespace  detail
 
namespace  directory
 
namespace  except
 
namespace  LineIntersectionFunctor
 
namespace  message
 
namespace  ObjectTypeRegistry
 
namespace  StateTracker
 
namespace  Vec
 

Classes

struct  animationMsg
 animation time step on client or no. of animation steps on server changed More...
 
struct  ArrayLoader
 
struct  ArraySaver
 
class  AvailableModule
 
class  AvailableModuleBase
 
struct  boundsMsg
 send scene bounding sphere from server to client More...
 
class  Cell
 
struct  CellBoundsFunctor
 
class  Celltree
 
class  CelltreeInterface
 
struct  CelltreeNode
 
struct  CelltreeNode< 4, NumDimensions >
 
union  CelltreeNode< 4, NumDimensions >.__unnamed5__
 
union  CelltreeNode< 4, NumDimensions >.__unnamed7__
 
struct  CelltreeNode< 8, NumDimensions >
 
union  CelltreeNode< 8, NumDimensions >.__unnamed1__
 
union  CelltreeNode< 8, NumDimensions >.__unnamed3__
 
class  Clock
 
struct  CompressionParameters
 
struct  CompressionSettings
 
class  Coords
 
class  CoordsWithRadius
 
class  coRestraint
 
class  DataBase
 
class  DeepArchiveFetcher
 
class  DeepArchiveSaver
 
class  default_init_allocator
 
struct  DepthQuantize
 quantized depth data for a single 4x4 pixel tile More...
 
struct  DepthQuantizeBits
 quantized depth data for a single 4x4 pixel tile More...
 
struct  DepthQuantizeMinMaxDepth
 min/max depth for a single 4x4 pixel tile (when storing depths and interpolation bits separately) More...
 
class  ElementInterface
 
class  Empty
 
class  EnumArray
 
class  Fetcher
 
struct  FileInfo
 
class  GeometryInterface
 
class  GridInterface
 
struct  HubData
 
class  Indexed
 
struct  lightsMsg
 send lighting parameters from client to server More...
 
class  LineIntersectionFunctor
 
class  Lines
 
class  LineVisitationFunctor
 
struct  matricesMsg
 send matrices from client to server More...
 
class  MessageSender
 
class  Meta
 
class  Module
 
class  ModuleCompound
 
class  NetpbmImage
 
class  Ngons
 
class  Normals
 
class  Object
 
struct  ObjectData
 
class  ObjectInterfaceBase
 
class  ObjectTypeRegistry
 
class  ParallelRemoteRenderManager
 
class  Parameter
 
class  ParameterBase
 
struct  ParameterCheck
 
struct  ParameterCheck< Integer >
 
struct  ParameterCheck< std::string >
 
class  ParameterManager
 
struct  ParameterType
 
struct  ParameterType< Float >
 
struct  ParameterType< Integer >
 
struct  ParameterType< IntParamVector >
 
struct  ParameterType< ParamVector >
 
struct  ParameterType< std::string >
 
class  ParameterVector
 
class  PlaceHolder
 
class  PointInclusionFunctor
 
class  Points
 
class  PointVisitationFunctor
 
class  Polygons
 
class  Port
 
class  PortTask
 
class  PortTracker
 
class  ReadBackCuda
 fast framebuffer read-back using CUDA More...
 
class  Reader
 
class  RectilinearGrid
 
class  RenderObject
 
struct  rfbMsg
 basic RFB message header More...
 
class  RhrController
 
class  RhrServer
 Implement remote hybrid rendering server. More...
 
class  Saver
 
struct  shm
 
class  Shm
 
class  shm_array
 
class  shm_array_ref
 
class  shm_exception
 
struct  shm_name_t
 
class  shm_obj_ref
 
struct  ShmData
 
class  Spheres
 
class  StateObserver
 
class  StateTracker
 
class  StopWatch
 
class  StructuredGrid
 
class  StructuredGridBase
 
struct  SubArchiveDirectoryEntry
 
struct  SystemInfo
 
class  Texture1D
 
struct  tileMsg
 send image tile from server to client More...
 
class  Tubes
 
class  UniformGrid
 
class  UnstructuredGrid
 
class  Url
 
struct  variantMsg
 
class  Vec
 
class  vecistreambuf
 
class  vecostreambuf
 
class  VertexOwnerList
 
struct  VistleScalarVector
 
struct  yas_binary_iarchive
 
struct  yas_binary_oarchive
 
class  yas_iarchive
 
class  yas_oarchive
 

Typedefs

typedef std::shared_ptr< Objectobj_ptr
 
typedef std::shared_ptr< const Objectobj_const_ptr
 
typedef std::function< void(const std::string &name)> ArrayCompletionHandler
 
typedef std::function< void(Object::const_ptr)> ObjectCompletionHandler
 
typedef std::vector< SubArchiveDirectoryEntrySubArchiveDirectory
 
typedef boost::mpl::vector< yas_iarchiveInputArchives
 
typedef boost::mpl::vector< yas_oarchiveOutputArchives
 
typedef yas_oarchive oarchive
 
typedef yas_iarchive iarchive
 
typedef std::function< bool(const message::Message &msg, const buffer *payload)> sendMessageFunction
 
typedef std::function< bool(const message::Message &msg, const MessagePayload &payload)> sendShmMessageFunction
 
typedef std::map< AvailableModule::Key, AvailableModuleAvailableMap
 
typedef CelltreeNode< sizeof(Index), 1 > CelltreeNode1
 
typedef CelltreeNode< sizeof(Index), 2 > CelltreeNode2
 
typedef CelltreeNode< sizeof(Index), 3 > CelltreeNode3
 
typedef Celltree< Scalar, Index, 1 > Celltree1
 
typedef Celltree< Scalar, Index, 2 > Celltree2
 
typedef Celltree< Scalar, Index, 3 > Celltree3
 
typedef boost::mpl::vector_c< int, 1, 2, 3, 4 > Dimensions
 
typedef std::shared_ptr< Normalsnormals_ptr
 
typedef std::shared_ptr< const Normalsnormals_const_ptr
 
typedef uint32_t Index
 
typedef int32_t SIndex
 
typedef ShmVector< char > MessagePayload
 
typedef managed_shm::handle_t shm_handle_t
 
typedef boost::mpl::vector< Integer, Float, ParamVector, std::string > Parameters
 
typedef ParameterVector< FloatParamVector
 
typedef ParameterVector< IntegerIntParamVector
 
typedef std::deque< obj_const_ptrObjectList
 
typedef Ngons< 4 > Quads
 
typedef unsigned char Byte
 
typedef float Scalar
 
typedef double Float
 
typedef int64_t Integer
 
typedef boost::mpl::vector< char, signed char, unsigned char, int32_t, uint32_t, int64_t, uint64_t, float, double > Scalars
 
typedef boost::interprocess::managed_shared_memory managed_shm
 
typedef shm_array_ref< shm_array< T, typename shm< T >::allocator > > ShmVector
 
typedef boost::mpl::push_back< Scalars, CelltreeNode< sizeof(Index), 1 > >::type VectorTypes1
 
typedef boost::mpl::push_back< VectorTypes1, CelltreeNode< sizeof(Index), 2 > >::type VectorTypes2
 
typedef boost::mpl::push_back< VectorTypes2, CelltreeNode< sizeof(Index), 3 > >::type VectorTypes
 
typedef std::set< std::shared_ptr< Parameter > > ParameterSet
 
typedef Ngons< 3 > Triangles
 
typedef Eigen::Quaternion< vistle::ScalarQuaternion
 
typedef Eigen::AngleAxis< vistle::ScalarAngleAxis
 
typedef Eigen::Matrix< T, d, 1 > VistleVector
 
typedef VistleVector< Scalar, d > ScalarVector
 
typedef VistleVector< double, d > DoubleVector
 
typedef VistleVector< float, d > FloatVector
 
typedef Eigen::Matrix< Scalar, 1, 1 > Vector1
 
typedef Eigen::Matrix< Scalar, 2, 1 > Vector2
 
typedef Eigen::Matrix< Scalar, 3, 1 > Vector3
 
typedef Eigen::Matrix< Scalar, 4, 1 > Vector4
 
typedef Vector3 Vector
 
typedef Eigen::Matrix< Scalar, 2, 3 > Matrix2x3
 
typedef Eigen::Matrix< Scalar, 3, 2 > Matrix3x2
 
typedef Eigen::Matrix< Scalar, 1, 1 > Matrix1
 
typedef Eigen::Matrix< Scalar, 2, 2 > Matrix2
 
typedef Eigen::Matrix< Scalar, 3, 3 > Matrix3
 
typedef Eigen::Matrix< Scalar, 4, 4 > Matrix4
 
typedef Eigen::Matrix< double, 1, 1 > DoubleVector1
 
typedef Eigen::Matrix< double, 2, 1 > DoubleVector2
 
typedef Eigen::Matrix< double, 3, 1 > DoubleVector3
 
typedef Eigen::Matrix< double, 4, 1 > DoubleVector4
 
typedef Eigen::Matrix< double, 2, 3 > DoubleMatrix2x3
 
typedef Eigen::Matrix< double, 3, 2 > DoubleMatrix3x2
 
typedef Eigen::Matrix< double, 1, 1 > DoubleMatrix1
 
typedef Eigen::Matrix< double, 2, 2 > DoubleMatrix2
 
typedef Eigen::Matrix< double, 3, 3 > DoubleMatrix3
 
typedef Eigen::Matrix< double, 4, 4 > DoubleMatrix4
 
typedef default_init_allocator< T > allocator
 
typedef std::vector< char, allocator< char > > buffer
 
typedef long process_handle
 
using RgbaCompressionParameters = CompressionParameters::RgbaCompressionParameters
 
using DepthCompressionParameters = CompressionParameters::DepthCompressionParameters
 
typedef DepthQuantizeBits< 16, 4, 0 > DepthQuantizeBits16
 
typedef DepthQuantizeBits< 24, 3, 4 > DepthQuantizeBits24
 
typedef DepthQuantizeMinMaxDepth< 16 > MinMaxDepth16
 
typedef DepthQuantizeMinMaxDepth< 24 > MinMaxDepth24
 
typedef DepthQuantize< 16, 4, 0 > DepthQuantize16
 
typedef DepthQuantize< 24, 3, 4 > DepthQuantize24
 
typedef rfbMsg RhrSubMessage
 header for remote hybrid rendering message More...
 

Enumerations

enum  endianness
 
enum  DepthFormat { DepthInteger , DepthFloat , DepthRGBA }
 
enum  {
  rfbMatrices , rfbLights , rfbTile , rfbBounds ,
  rfbAnimation , rfbVariant
}
 RFB protocol extension message types for remote hybrid rendering (RHR) More...
 
enum  { rfbEyeMiddle , rfbEyeLeft , rfbEyeRight }
 
enum  rfbTileFlags { rfbTileNone = 0 , rfbTileFirst = 1 , rfbTileLast = 2 , rfbTileRequest = 4 }
 
enum  rfbTileFormats {
  rfbDepth8Bit , rfbDepth16Bit , rfbDepth24Bit , rfbDepth32Bit ,
  rfbDepthFloat , rfbColorRGBA
}
 
enum  rfbTileCompressions {
  rfbTileRaw = 0 , rfbTileDepthPredict = 1 , rfbTileDepthPredictPlanar = 2 , rfbTileDepthQuantize = 4 ,
  rfbTileDepthQuantizePlanar = 8 , rfbTileDepthZfp = 16 , rfbTileJpeg = 32 , rfbTilePredictRGB = 64 ,
  rfbTilePredictRGBA = 128 , rfbTileClear = 256
}
 

Functions

void registerTypes ()
 
 DEFINE_ENUM_WITH_STRING_CONVERSIONS (FieldCompressionMode,(Uncompressed)(ZfpFixedRate)(ZfpAccuracy)(ZfpPrecision)) namespace detail
 
Vector trilinearInverse (const Vector &pp0, const Vector pp[8])
 
bool insideConvexPolygon (const Vector &point, const Vector *corners, Index nCorners, const Vector &normal)
 
static Scalar originSideOfLineZ2D (const Vector3 &p0, const Vector3 &p1)
 
bool originInsidePolygonZ2D (const Vector3 *corners, Index nCorners)
 
bool insidePolygon (const Vector &point, const Vector *corners, Index nCorners, const Vector &normal)
 
std::pair< Vector, VectorfaceNormalAndCenter (Byte type, Index f, const Index *cl, const Scalar *x, const Scalar *y, const Scalar *z)
 
std::pair< Vector, VectorfaceNormalAndCenter (Index nVert, const Index *verts, const Scalar *x, const Scalar *y, const Scalar *z)
 
std::pair< Vector, VectorfaceNormalAndCenter (Index nVert, const Vector *corners)
 
bool insideCell (const Vector &point, Byte type, Index nverts, const Index *cl, const Scalar *x, const Scalar *y, const Scalar *z)
 
buffer createPayload (const std::vector< FileInfo > &info)
 
std::vector< FileInfounpackFileInfos (const buffer &payload)
 
buffer createPayload (const SystemInfo &info)
 
SystemInfo unpackSystemInfo (const buffer &payload)
 
buffer packFileList (const std::vector< std::string > &files)
 
std::vector< std::string > unpackFileList (const buffer &payload)
 
O::ptr make_ptr (Args &&...args)
 
std::ostream & operator<< (std::ostream &out, const Meta &meta)
 
void instantiate_parameters ()
 
bool operator== (const ParameterVector< S > &v1, const ParameterVector< S > &v2)
 
bool operator!= (const ParameterVector< S > &v1, const ParameterVector< S > &v2)
 
bool operator< (const ParameterVector< S > &v1, const ParameterVector< S > &v2)
 
bool operator> (const ParameterVector< S > &v1, const ParameterVector< S > &v2)
 
std::ostream & operator<< (std::ostream &out, const ParameterVector< S > &v)
 
std::ostream & operator<< (std::ostream &s, const Port &port)
 
size_t memorySize ()
 
size_t memorySize< 4 > ()
 
size_t memorySize< 8 > ()
 
std::string operator+ (const std::string &s, const shm_name_t &n)
 
void serializeMatrix (Archive &ar, M &m, const unsigned int version)
 
Vector3 transformPoint (const FourColMat &t, const Vector3 &v)
 
Vector3 cross (const Vector &a, const Vector &b)
 
std::string sched_affinity_map ()
 
std::string thread_affinity_map ()
 
byte_swap (T value)
 
static void splitpath (const std::string &value, std::vector< std::string > *components)
 
std::string getbindir (int argc, char *argv[])
 
std::string hostname ()
 
bool start_listen (unsigned short port, boost::asio::ip::tcp::acceptor &acceptor_v4, boost::asio::ip::tcp::acceptor &acceptor_v6, boost::system::error_code &ec)
 
clamp (S v, S vmin, S vmax)
 
lerp (S a, S b, Float t)
 
difference_of_products (S a, S b, S c, S d)
 
std::ostream & operator<< (std::ostream &s, const NetpbmImage &img)
 
bool shmPerRank ()
 
bool adaptive_wait (bool work, const void *client)
 
process_handle spawn_process (const std::string &executable, const std::vector< std::string > args)
 
void replace_process (const std::string &executable, const std::vector< std::string > args)
 
bool kill_process (process_handle pid)
 
process_handle try_wait (int *status)
 
process_handle try_wait (process_handle pid0, int *status)
 
process_handle get_process_handle ()
 
std::string backtrace ()
 
bool attach_debugger ()
 
bool parentProcessDied ()
 
static std::string url_decode (const std::string &str, bool in_path)
 
std::ostream & operator<< (std::ostream &os, const Url &url)
 
std::string shortenUrl (const Url &url, size_t length=20)
 
std::string getLoginName ()
 
std::string getRealName ()
 
unsigned long getUserId ()
 
V_MODULEEXPORT int getTimestep (Object::const_ptr obj)
 
V_MODULEEXPORT double getRealTime (Object::const_ptr obj)
 
static void sendTextVarArgs (const Module *self, message::SendText::TextType type, const char *fmt, va_list args)
 
V_MODULEEXPORT std::ostream & operator<< (std::ostream &os, const Reader::Token &tok)
 
buffer copyTile (const char *img, int x, int y, int w, int h, int stride, int bpp)
 
buffer compressDepth (const float *depth, int x, int y, int w, int h, int stride, vistle::DepthCompressionParameters &param)
 
return copyTile (reinterpret_cast< const char * >(depth), x, y, w, h, stride, sizeof(float))
 
buffer V_RHREXPORT compressRgba (const unsigned char *rgba, int x, int y, int w, int h, int stride, RgbaCompressionParameters &param)
 
bool V_RHREXPORT decompressTile (char *dest, const buffer &input, CompressionParameters param, int x, int y, int w, int h, int stride)
 
template<typename T >
static int clz (T xx)
 
template<typename T >
double depthcompare_t (const T *ref, const T *check, int xx, int yy, int w, int h, int stride, int precision, int bits_per_pixel, bool print)
 
template<>
double depthcompare_t (const float *ref, const float *check, int xx, int yy, int w, int h, int stride, int precision, int bits_per_pixel, bool print)
 
double depthcompare (const char *ref, const char *check, DepthFormat format, int depthps, int x, int y, int w, int h, int stride, bool print=true)
 compute (and optionally print) PSNR for compressed depth image check compared to reference image ref More...
 
template<>
uint32_t getdepth< DepthQuantize16 > (const DepthQuantize16 &q, int idx)
 
template<>
uint32_t getdepth< DepthQuantize24 > (const DepthQuantize24 &q, int idx)
 
template<>
uint32_t getdepth< MinMaxDepth16 > (const MinMaxDepth16 &q, int idx)
 
template<>
uint32_t getdepth< MinMaxDepth24 > (const MinMaxDepth24 &q, int idx)
 
size_t depthquant_size (DepthFormat format, int depthps, int width, int height)
 return size required by depthquant for quantized image More...
 
template<typename ZType >
void set_z (ZType &z, uint32_t val)
 
template<>
void set_z< uint16_t > (uint16_t &z, uint32_t val)
 
template<>
void set_z< uint32_t > (uint32_t &z, uint32_t val)
 
template<>
void set_z< float > (float &z, uint32_t val)
 
template<class Quant , class MinMaxDepth , typename ZType >
static void depthdequant_t (ZType *zbuf, const Quant *quantbuf, const MinMaxDepth *mmdepth, DepthFormat format, int dx, int dy, int width, int height, int stride)
 
void depthdequant (char *zbuf, const char *quantbuf, DepthFormat format, int depthps, int tx, int dy, int width, int height, int stride=-1)
 reverse transformation done by depthquant More...
 
void depthdequant_planar (char *zbuf, const char *quantbuf, DepthFormat format, int depthps, int dx, int dy, int width, int height, int stride)
 
template<int num>
static void sort (const uint32_t *depths, uint32_t *orders, uint32_t Far, uint32_t &maxidx)
 
template<int size, uint32_t Far>
static void findgap (const uint32_t *depths, uint32_t midval, uint32_t &lowermid, uint32_t &uppermid)
 
template<int bpp, class Quant , class MinMaxDepth , DepthFormat format>
static void depthquant_t (const uchar *inimg, Quant *quantbuf, MinMaxDepth *mmdepth, int x0, int y0, int w, int h, int stride)
 dxt-like compression for depth values More...
 
void depthquant (char *quantbuf, const char *zbuf, DepthFormat format, int depthps, int x, int y, int width, int height, int stride=-1)
 transform depth buffer into quantized values on 4x4 pixel tiles More...
 
void depthquant_planar (char *quantbufS, const char *zbufS, DepthFormat format, int depthps, int x, int y, int width, int height, int stride)
 
template<class DepthQuantize >
void setdepth (DepthQuantize &q, int idx, uint32_t value)
 set depth bits for a single pixel More...
 
template<class DepthQuantize >
uint32_t getdepth (const DepthQuantize &q, int idx)
 retrieve depth bits for a single pixel More...
 
template<class DepthQuantize >
void dq_clearbits (DepthQuantize &q)
 zero depth bits for a 4x4 tile More...
 
template<class DepthQuantize >
void dq_setbit (DepthQuantize &q, int bit, unsigned value=1)
 set a single bit in DepthQuantize struct More...
 
template<class DepthQuantize >
void dq_clearbit (DepthQuantize &q, int bit)
 clear a single bit in DepthQuantize struct More...
 
template<class DepthQuantize >
unsigned dq_getbit (const DepthQuantize &q, int bit)
 retrieve a single bit from DepthQuantize struct More...
 
template<class DepthQuantize >
void dq_setbits (DepthQuantize &q, int bit, int nbits, unsigned value, int block=1)
 set multiple bits in DepthQuantize struct More...
 
template<class DepthQuantize >
void dq_setbits (DepthQuantize &q, uint64_t bits)
 set all bits in DepthQuantize struct More...
 
template<class DepthQuantize >
unsigned dq_getbits (const DepthQuantize &q, int bit, int nbits)
 get multiple bits from DepthQuantize struct More...
 
template<class DepthQuantize >
uint64_t dq_getbits (const DepthQuantize &q)
 get all bits from DepthQuantize struct More...
 
template<DepthFormat format, int bpp>
uint32_t get_depth (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthFloat, 4 > (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthRGBA, 4 > (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthInteger, 1 > (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthInteger, 2 > (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthInteger, 3 > (const unsigned char *img, int x, int y, int w, int h)
 
template<>
uint32_t get_depth< DepthInteger, 4 > (const unsigned char *img, int x, int y, int w, int h)
 
void transform_predict (unsigned char *output, const float *input, unsigned width, unsigned height, unsigned stride)
 
void transform_unpredict (float *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
void transform_predict_planar (unsigned char *output, const float *input, unsigned width, unsigned height, unsigned stride)
 
void transform_unpredict_planar (float *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template<int planes, bool planar, bool rgba>
void transform_predict (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template<int planes, bool planar, bool rgba>
void transform_unpredict (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 1, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 2, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 3, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 4, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 5, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_predict< 6, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 1, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 2, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 3, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 4, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 5, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template void transform_unpredict< 6, true, false > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
static void rgb2yuv (uint8_t r, uint8_t g, uint8_t b, uint8_t &y, uint8_t &u, u_int8_t &v)
 
static void yuv2rgb (uint8_t y, uint8_t u, uint8_t v, uint8_t &r, uint8_t &g, u_int8_t &b)
 
template<>
void transform_predict< 3, true, true > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template<>
void transform_unpredict< 3, true, true > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template<>
void transform_predict< 4, true, true > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 
template<>
void transform_unpredict< 4, true, true > (unsigned char *output, const unsigned char *input, unsigned width, unsigned height, unsigned stride)
 

Variables

 little_endian
 
 big_endian
 
 network_endian
 
const int ModuleNameLength
 
const std::string moduleCompoundSuffix
 
static const Scalar Epsilon
 
template class V_COREEXPORT Celltree< Scalar, Index, 1 >
 
template class V_COREEXPORT Celltree< Scalar, Index, 2 >
 
template class V_COREEXPORT Celltree< Scalar, Index, 3 >
 
const unsigned MaxLeafSize
 
const int MaxDimension
 
const Index InvalidIndex
 
template class V_COREEXPORT Ngons< 4 >
 
const std::array< const char *, boost::mpl::size< Scalars >::value > ScalarTypeNames
 
template class V_COREEXPORT Ngons< 3 >
 
static const Scalar Epsilon
 
param depthCodec = vistle::CompressionParameters::DepthRaw
 
const size_t RhrMessageSize = 840
 

Class Documentation

◆ vistle::DepthQuantizeMinMaxDepth

struct vistle::DepthQuantizeMinMaxDepth
template<int Precision>
struct vistle::DepthQuantizeMinMaxDepth< Precision >

min/max depth for a single 4x4 pixel tile (when storing depths and interpolation bits separately)

Class Members
uint8_t depth[2][Precision/8] minimum and maximum depth data

Typedef Documentation

◆ DepthCompressionParameters

using vistle::DepthCompressionParameters = typedef CompressionParameters::DepthCompressionParameters

◆ DepthQuantize16

◆ DepthQuantize24

◆ DepthQuantizeBits16

◆ DepthQuantizeBits24

◆ MinMaxDepth16

◆ MinMaxDepth24

◆ RgbaCompressionParameters

◆ RhrSubMessage

header for remote hybrid rendering message

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

RFB protocol extension message types for remote hybrid rendering (RHR)

Enumerator
rfbMatrices 

send matrices from client to server

rfbLights 

send lighting parameters from client to server

rfbTile 

send image tile from server to client

rfbBounds 

send scene bounds from server to client

rfbAnimation 

current/total animation time steps

rfbVariant 

control visibility of variants

◆ anonymous enum

anonymous enum
Enumerator
rfbEyeMiddle 
rfbEyeLeft 
rfbEyeRight 

◆ DepthFormat

Enumerator
DepthInteger 
DepthFloat 
DepthRGBA 

◆ rfbTileCompressions

Enumerator
rfbTileRaw 
rfbTileDepthPredict 
rfbTileDepthPredictPlanar 
rfbTileDepthQuantize 
rfbTileDepthQuantizePlanar 
rfbTileDepthZfp 
rfbTileJpeg 
rfbTilePredictRGB 
rfbTilePredictRGBA 
rfbTileClear 

◆ rfbTileFlags

Enumerator
rfbTileNone 
rfbTileFirst 
rfbTileLast 
rfbTileRequest 

◆ rfbTileFormats

Enumerator
rfbDepth8Bit 
rfbDepth16Bit 
rfbDepth24Bit 
rfbDepth32Bit 
rfbDepthFloat 
rfbColorRGBA 

Function Documentation

◆ clz()

template<typename T >
static int vistle::clz ( xx)
static

◆ compressDepth()

buffer V_RHREXPORT vistle::compressDepth ( const float *  depth,
int  x,
int  y,
int  w,
int  h,
int  stride,
vistle::DepthCompressionParameters param 
)

◆ compressRgba()

buffer V_RHREXPORT vistle::compressRgba ( const unsigned char *  rgba,
int  x,
int  y,
int  w,
int  h,
int  stride,
RgbaCompressionParameters param 
)

◆ copyTile() [1/2]

buffer vistle::copyTile ( const char *  img,
int  x,
int  y,
int  w,
int  h,
int  stride,
int  bpp 
)

◆ copyTile() [2/2]

return vistle::copyTile ( reinterpret_cast< const char * >  depth,
,
,
,
,
stride  ,
sizeof(float)   
)

◆ decompressTile()

bool V_RHREXPORT vistle::decompressTile ( char *  dest,
const buffer input,
CompressionParameters  param,
int  x,
int  y,
int  w,
int  h,
int  stride 
)

◆ depthcompare()

double vistle::depthcompare ( const char *  ref,
const char *  check,
DepthFormat  format,
int  depthps,
int  x,
int  y,
int  w,
int  h,
int  stride,
bool  print 
)

compute (and optionally print) PSNR for compressed depth image check compared to reference image ref

◆ depthcompare_t() [1/2]

template<>
double vistle::depthcompare_t ( const float *  ref,
const float *  check,
int  xx,
int  yy,
int  w,
int  h,
int  stride,
int  precision,
int  bits_per_pixel,
bool  print 
)

◆ depthcompare_t() [2/2]

template<typename T >
double vistle::depthcompare_t ( const T *  ref,
const T *  check,
int  xx,
int  yy,
int  w,
int  h,
int  stride,
int  precision,
int  bits_per_pixel,
bool  print 
)

◆ depthdequant()

void V_RHREXPORT vistle::depthdequant ( char *  zbuf,
const char *  quantbuf,
DepthFormat  format,
int  depthps,
int  dx,
int  dy,
int  width,
int  height,
int  stride 
)

reverse transformation done by depthquant

◆ depthdequant_planar()

void V_RHREXPORT vistle::depthdequant_planar ( char *  zbuf,
const char *  quantbuf,
DepthFormat  format,
int  depthps,
int  dx,
int  dy,
int  width,
int  height,
int  stride 
)

◆ depthdequant_t()

template<class Quant , class MinMaxDepth , typename ZType >
static void vistle::depthdequant_t ( ZType *  zbuf,
const Quant *  quantbuf,
const MinMaxDepth *  mmdepth,
DepthFormat  format,
int  dx,
int  dy,
int  width,
int  height,
int  stride 
)
static

◆ depthquant()

void V_RHREXPORT vistle::depthquant ( char *  quantbufS,
const char *  zbufS,
DepthFormat  format,
int  depthps,
int  x,
int  y,
int  width,
int  height,
int  stride 
)

transform depth buffer into quantized values on 4x4 pixel tiles

◆ depthquant_planar()

void V_RHREXPORT vistle::depthquant_planar ( char *  quantbufS,
const char *  zbufS,
DepthFormat  format,
int  depthps,
int  x,
int  y,
int  width,
int  height,
int  stride 
)

◆ depthquant_size()

size_t V_RHREXPORT vistle::depthquant_size ( DepthFormat  format,
int  depthps,
int  width,
int  height 
)

return size required by depthquant for quantized image

◆ depthquant_t()

template<int bpp, class Quant , class MinMaxDepth , DepthFormat format>
static void vistle::depthquant_t ( const uchar inimg,
Quant *  quantbuf,
MinMaxDepth *  mmdepth,
int  x0,
int  y0,
int  w,
int  h,
int  stride 
)
static

dxt-like compression for depth values

◆ dq_clearbit()

template<class DepthQuantize >
void vistle::dq_clearbit ( DepthQuantize q,
int  bit 
)

clear a single bit in DepthQuantize struct

◆ dq_clearbits()

template<class DepthQuantize >
void vistle::dq_clearbits ( DepthQuantize q)

zero depth bits for a 4x4 tile

◆ dq_getbit()

template<class DepthQuantize >
unsigned vistle::dq_getbit ( const DepthQuantize q,
int  bit 
)
inline

retrieve a single bit from DepthQuantize struct

◆ dq_getbits() [1/2]

template<class DepthQuantize >
uint64_t vistle::dq_getbits ( const DepthQuantize q)
inline

get all bits from DepthQuantize struct

◆ dq_getbits() [2/2]

template<class DepthQuantize >
unsigned vistle::dq_getbits ( const DepthQuantize q,
int  bit,
int  nbits 
)
inline

get multiple bits from DepthQuantize struct

◆ dq_setbit()

template<class DepthQuantize >
void vistle::dq_setbit ( DepthQuantize q,
int  bit,
unsigned  value = 1 
)
inline

set a single bit in DepthQuantize struct

◆ dq_setbits() [1/2]

template<class DepthQuantize >
void vistle::dq_setbits ( DepthQuantize q,
int  bit,
int  nbits,
unsigned  value,
int  block = 1 
)
inline

set multiple bits in DepthQuantize struct

◆ dq_setbits() [2/2]

template<class DepthQuantize >
void vistle::dq_setbits ( DepthQuantize q,
uint64_t  bits 
)
inline

set all bits in DepthQuantize struct

◆ findgap()

template<int size, uint32_t Far>
static void vistle::findgap ( const uint32_t *  depths,
uint32_t  midval,
uint32_t &  lowermid,
uint32_t &  uppermid 
)
inlinestatic

◆ get_depth()

template<DepthFormat format, int bpp>
uint32_t vistle::get_depth ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthFloat, 4 >()

template<>
uint32_t vistle::get_depth< DepthFloat, 4 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthInteger, 1 >()

template<>
uint32_t vistle::get_depth< DepthInteger, 1 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthInteger, 2 >()

template<>
uint32_t vistle::get_depth< DepthInteger, 2 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthInteger, 3 >()

template<>
uint32_t vistle::get_depth< DepthInteger, 3 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthInteger, 4 >()

template<>
uint32_t vistle::get_depth< DepthInteger, 4 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ get_depth< DepthRGBA, 4 >()

template<>
uint32_t vistle::get_depth< DepthRGBA, 4 > ( const unsigned char *  img,
int  x,
int  y,
int  w,
int  h 
)
inline

◆ getdepth()

template<class DepthQuantize >
uint32_t vistle::getdepth ( const DepthQuantize q,
int  idx 
)

retrieve depth bits for a single pixel

◆ getdepth< DepthQuantize16 >()

template<>
uint32_t vistle::getdepth< DepthQuantize16 > ( const DepthQuantize16 q,
int  idx 
)
inline

◆ getdepth< DepthQuantize24 >()

template<>
uint32_t vistle::getdepth< DepthQuantize24 > ( const DepthQuantize24 q,
int  idx 
)
inline

◆ getdepth< MinMaxDepth16 >()

template<>
uint32_t vistle::getdepth< MinMaxDepth16 > ( const MinMaxDepth16 q,
int  idx 
)
inline

◆ getdepth< MinMaxDepth24 >()

template<>
uint32_t vistle::getdepth< MinMaxDepth24 > ( const MinMaxDepth24 q,
int  idx 
)
inline

◆ rgb2yuv()

static void vistle::rgb2yuv ( uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t &  y,
uint8_t &  u,
u_int8_t &  v 
)
static

◆ set_z()

template<typename ZType >
void vistle::set_z ( ZType &  z,
uint32_t  val 
)
inline

◆ set_z< float >()

template<>
void vistle::set_z< float > ( float &  z,
uint32_t  val 
)
inline

◆ set_z< uint16_t >()

template<>
void vistle::set_z< uint16_t > ( uint16_t &  z,
uint32_t  val 
)
inline

◆ set_z< uint32_t >()

template<>
void vistle::set_z< uint32_t > ( uint32_t &  z,
uint32_t  val 
)
inline

◆ setdepth()

template<class DepthQuantize >
void vistle::setdepth ( DepthQuantize q,
int  idx,
uint32_t  value 
)
inline

set depth bits for a single pixel

◆ sort()

template<int num>
static void vistle::sort ( const uint32_t *  depths,
uint32_t *  orders,
uint32_t  Far,
uint32_t &  maxidx 
)
inlinestatic

◆ transform_predict() [1/2]

void vistle::transform_predict ( unsigned char *  output,
const float *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict() [2/2]

template<int planes, bool planar, bool rgba>
void vistle::transform_predict ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 1, true, false >()

template void vistle::transform_predict< 1, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 2, true, false >()

template void vistle::transform_predict< 2, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 3, true, false >()

template void vistle::transform_predict< 3, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 3, true, true >()

template<>
void vistle::transform_predict< 3, true, true > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 4, true, false >()

template void vistle::transform_predict< 4, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 4, true, true >()

template<>
void vistle::transform_predict< 4, true, true > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 5, true, false >()

template void vistle::transform_predict< 5, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict< 6, true, false >()

template void vistle::transform_predict< 6, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_predict_planar()

void vistle::transform_predict_planar ( unsigned char *  output,
const float *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict() [1/2]

void vistle::transform_unpredict ( float *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict() [2/2]

template<int planes, bool planar, bool rgba>
void vistle::transform_unpredict ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 1, true, false >()

template void vistle::transform_unpredict< 1, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 2, true, false >()

template void vistle::transform_unpredict< 2, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 3, true, false >()

template void vistle::transform_unpredict< 3, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 3, true, true >()

template<>
void vistle::transform_unpredict< 3, true, true > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 4, true, false >()

template void vistle::transform_unpredict< 4, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 4, true, true >()

template<>
void vistle::transform_unpredict< 4, true, true > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 5, true, false >()

template void vistle::transform_unpredict< 5, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict< 6, true, false >()

template void vistle::transform_unpredict< 6, true, false > ( unsigned char *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ transform_unpredict_planar()

void vistle::transform_unpredict_planar ( float *  output,
const unsigned char *  input,
unsigned  width,
unsigned  height,
unsigned  stride 
)

◆ yuv2rgb()

static void vistle::yuv2rgb ( uint8_t  y,
uint8_t  u,
uint8_t  v,
uint8_t &  r,
uint8_t &  g,
u_int8_t &  b 
)
static

Variable Documentation

◆ depthCodec

param vistle::depthCodec = vistle::CompressionParameters::DepthRaw

◆ RhrMessageSize

const size_t vistle::RhrMessageSize = 840