* Calculate model layout based on 'tensor' layout and convert steps
Previously, 'model layout' is set to '...' by default,
thus no shape conversion happened when tensor layout is set to 'NHWC', then there was explicit convert_layout "NCHW"
Now "model layout" is calculated based on tensor layout and conversion steps:
Examples:
1) Tensor: NHWC, Convert: NCHW. Result: NCHW
2) Tensor: NHWC, Convert: 0312. Result: NCHW
* Initial move of tensor data calculation
* Moved 'impls' to new file
* Postprocessing + unit tests
* clang-format fix
* Added more details to preprocessing nodes
- Mean/Scale - will print mean/scale values
- Convert type - will print type
- Convert layout - will print destination layout
- Convert color - will print destination color
It is needed to troubleshoot the problems. If error occurs, message will not display last op's target shape/layout/type
* Add python bindings
* update tests
* Added memory type to dump if set
* Code style fix
* unity build fix
* Dump tensor if only memory type is set
* Added debug print
* Fix Param->Result case
Previously, layout was set by preprocessing set to old parameter as well
This is incorrect because in case of exception layout info will not be reverted
In this case old Result pointed to old Parameter and was able to preserve runtime info
After fixing of this, case Param->Result was broken if revalidation is not triggerred
Fix is to detect 'Result' as a consumer of some parameter and force revalidation in this case
* Revert occasionally committed line
* And one more line