Pink 0.9
Classes | Typedefs | Functions

pink Namespace Reference

Classes

class  uiSqhool
class  deep_xvimage
struct  liberator_t
 This structure frees the images, that have been allocated by readimage. More...
class  pink_image
 This class forms the base of all image classes. More...
class  ujoi
 This class represents the image types used in Pink-C++ and Pink-Python. More...

Typedefs

typedef ujoi< unsigned char > char_image
 The char_image specialization.
typedef ujoi< unsigned short int > short_image
 The short_image specialization.
typedef ujoi< int32_t > int_image
 The int_image specialization.
typedef ujoi< float > float_image
 The float_image specialization.
typedef ujoi< double > double_image
 The double_image specialization.
typedef ujoi< fcomplexfcomplex_image
 The double_image specialization.
typedef ujoi< dcomplexdcomplex_image
 The double_image specialization.

Functions

boost::shared_ptr< types::vint > getDimensions (const index_t x, const index_t y, const index_t z, const index_t t)
boost::shared_ptr< deep_xvimagepy_readimage (std::string filename)

Detailed Description

Imagine the following sequence of numbers:

1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 10 10 10 10 10 1 1 1 1 1 2 2 2 2 2 3 3 3

We would like to do to things:

a) compactify them; that is to say create a list, where the similar values are put together: value 1: 0-5, 10-15 value 2: 5-10, 20-25 ... value 10: 10-20, 30-40

b) distribute them evenly among 'number_of_threads' threads. For this we know that there are less nodes than threads. And that each thread can only process elements in it's own node.

dibble[0] = { } dibble[1] = { } dibble[2] = { } dibble[3] = { } dibble[4] = { } dibble[5] = { } dibble[6] = { } dibble[7] = { } dibble[8] = { [0, 1) } dibble[9] = { [1, 3) } dibble[10] = { [3, 4) } dibble[11] = { [4, 6) } dibble[12] = { [6, 7) } dibble[13] = { [7, 7), [27, 29) } dibble[14] = { [29, 30) } dibble[15] = { [30, 32) } dibble[16] = { [7, 8) } dibble[17] = { [8, 10) } dibble[18] = { [10, 11) } dibble[19] = { [11, 13) } dibble[20] = { [13, 14) } dibble[21] = { [14, 16) } dibble[22] = { [16, 17) } dibble[23] = { [17, 19) } dibble[24] = { [14, 15) } dibble[25] = { [15, 16) } dibble[26] = { [16, 18) } dibble[27] = { [18, 19) } dibble[28] = { [19, 20) } dibble[29] = { [20, 22) } dibble[30] = { [22, 23) } dibble[31] = { [23, 25) } dibble[32] = { [22, 27), [38, 42) }


Function Documentation

boost::shared_ptr<types::vint> pink::getDimensions ( const index_t  x,
const index_t  y,
const index_t  z,
const index_t  t 
)

helper function for reading and writing from and to xvimage

Referenced by pink::ujoi< pixel_type_ >::ujoi().

boost::shared_ptr<deep_xvimage> pink::py_readimage ( std::string  filename)

This function is a wrap around readimage. It returns a C++ class which is then converted into ujoi<>