* refactor: add clang style check for samples
* fix: add .clang-format for ie
* fix: style check for missing headers
* refactor: remove cpplint for IE samples
* fix: setw is not a member of std for classification_results.hpp
* feat: add indent after ifdefine
* feat: set up google style for IE samples
* fix indents for w_dirent headers
* fix: include issues for utils.cpp due to clang-format
* Update benchmark_app to pass precision via command line
* Update vpu_perfcheck
* Update python benchmark_app to support setting precision from cmd
* Review comments
* Address more review comments
* Fixes after rebase
* [IE] Add batched blob support
New `class BatchedBlob : public CompoundBlob` defined to allow to pass multiple blobs as 1 InferRequest input.
Motivation: There is the special user case when a number of plain images (e.g. `NV12Blob`) should be passed as one input for network which batch size > 1.
`class CompoundBlob` is not applicable for such cases due to:
1. `NV12Blob` is `CompoundBlob` which prevents to combine multiple NV12 images to a CompoundBlob
2. The default behavior in most of plugins - do not accept generic CompoundBlob as `SetBlob()` argument
Adding `SetBlob(name, vector<Blob::Ptr>...)` to `class IInferRequest`, `class InferRequest`, `class IInferRequestInternal`, ... - is not effective solution due to limited and specific use cases for `batched inputs`.
+ Apply rule-of-zero to CompoundBlob and inherited classes.
* Add "BATCHED_BLOB" optimization capability metric
* Add BatchedBlob usage to hello_nv12_input_classification
* Apply offline code review outcome:
1. Revert CompoundBlob public .ctors signatures
2. Remove 'workaround' .ctor for `BatchedBlob`
3. Revert tensor descriptors of `I420Blob` `NV12Blob` back to the 'fake' value.
* Code review fix
* Add functional tests for CPU, GPU, MULTI, HETERO
* update doc comment
* Apply code review change requests.