[vsipl++] Needing help with VSIPL++ nomenclature...
Don McCoy
don at codesourcery.com
Tue Mar 6 16:50:54 UTC 2007
Haney, Wayne W. wrote:
>
> The last few days I’ve been researching VSIPL & VSIPL++ in order to
> integrate into our Submarine SONAR code. The VSIPL++ specification is
> confusing with the definition of what a Domain<> is. Could you please
> elucidate a bit more on what Domain<>s are? Any information you can
> give is greatly appreciated.
>
Domains provide an efficient way to specify a subset of the elements in
a particular view, i.e. a matrix or a vector. In specifying a domain,
one gives the starting index, an element-to-element stride and a length.
Using domains is one way to extract a "sub-view" from a set of data, for
cases where built-in methods are inadequate.
Normally, subviews are expressed through various, more convenient, view
member functions which depend on type of view being considered. For
example, complex views provide the real() and imag() subviews that one
would expect. These could also be expressed with domains, but one must
then be concerned with whether the data is held in split or interleaved
forms.
Other examples of subviews are the row() and col() operators for
matrices, which again may be expressed using domains, but only given
foreknowledge of whether the data is stored in row-major or col-major
form, etc...
In short, domains are an important construct but are not often needed
(at least in application programs) due to the high-level syntax provided
by the VSIPL++ standard.
I'd encourage you to take a look at the tutorial if you haven't already.
It contains an in-depth example (fast convolution), which is relevant to
a number of signal processing algorithms. The reference section included
in part two discusses views, subviews and domains among other things.
http://www.codesourcery.com/vsiplplusplus/1.3/tutorial.pdf
I personally find it easier to work from things like the tutorial or
from functional examples. We do not at this time have as many examples
as I would like, but we are adding more all the time. If you have any
specific requests, please don't hesitate to contact us again. We'll do
everything we can to assist you in your evaluation! Feedback is
appreciated as well.
Regards,
--
Don McCoy
don (at) CodeSourcery
(888) 776-0262 / (650) 331-3385, x712
More information about the vsipl++
mailing list