I know that as a policy you removed all the "In Place" function in Intel IPP.
I'm talking about the Image Processing domain functions.
I was wondering though, what would happen if I send the pointer as destination and source?
Should the current function work? Which might fail?
I'm asking specifically on the Column / Row Filter.
Should it work?
Should other work?
Could you publish a list of functions which should perform correctly in this case?
Let's add bit clarification on this: we used to plan to remove the "in-place", but based the users feedback, they seems to be used by many users. so we do not have plan to remove the "in-place" functions.
Hope this can be clarified for you.
I;m looking at the documentation:
Specifically at the filtration function at:
I don't see any "In Place" implementation.
But anyhow, I'm asking, those functions which are based on FIR filtering, do they support setting the source and the destination pointer to point to the same array?
Should it work work specifically with the separable Row / Column filter?
In-place operation is supported (correctness is guaranteed) only for functions that have suffix "_I" in their names. For all other functions their behavior in case of pSrc==pDst is undefined (some functions can return "unsupported mode" status). Take a look at the IPP Descriptors in the manual https://software.intel.com/en-us/node/503703 .
Yes, you are right, there are no "I" flavors for Row/Column filters. And I can confirm that if you try them with pSrc==pDst you'll see incorrect result. As a workaround for Row filter you can use ippsFIR function in a row-by-row loop.