Adding rough json file to generate initial code

Change-Id: I692245da0d059e35eff36ace5a2e36fb65cf06e5
Adding initial generated code from json

Change-Id: I02dd55f8d42bcf32c67f9dbab6d227794235ca04
Rename CenterVersorTransformInitializer to add Filter Suffix

This has been done so that there is a clear procedural and object
oriented filter method.
Correct the Versor Initialization wrapping code

Modified the generated code, following what was done for the
CenteredTransformInitializer.

Change-Id: I08694934c3561f8689d942c4d104cdb266042b5a
Print parent process object and minor documentation tweaks

Change-Id: Ia88ddf7b78ecde53c1d833c9a0efa63b37bcc5c2
Adding initial testing for Versor transform initializer

Change-Id: I92127cf6444017e380101ffccd857d5d1904bef6
Improve error message for transform initializers

Before dispatching adding check that the input images match the type
and dimension as required. Also the transform is checked that the
dimension matches.

Change-Id: I9ad9ce09eda5afc2d43c8feb17180c106799e98c
Merge branch 'master' into SIMPLEITK-563_WrapCenteredVersorTransformInitializer

Change-Id: I3363d24b41cec64f145de65f8ffc165429b3cde9
Adding explicit constructor from base transform to vesor

Change-Id: I5d7fb1b55e697e45ea6d4307dbeea0295c43e105
Moving vector testing facilities to SimpleITKTestHarness

Change-Id: Ida1c29135c24c5262f09bdf16bf530ed7238e3d1
Must include test harness before gtest

If gtest is include first then the operator<< for vector is not looked
up consistently.

Now only the SimpleITKTestHarness should include the gtest header.

Change-Id: I1be09066ad96da011b9d7299326b118a1b805dc7
Moving VectorDoubleRMS Predicate to cxx file

Change-Id: Ic351b7f7c6552c24d40b7f28ab55ea72989735cd
Adding inline keyword to functions in anonymous namespace

This is to address unused function warning emanating from clang 5.0.

Change-Id: I0b316d9be1ed700f1692e92cf7e6623f497c83a6
Adding explicit conversion constructor to transform from base class

This constructor currently does not change the underlying transform
type, it only tries to cast it to this derived specific interface. If
it's fails the base class methods are still functional, but the
specialized methods will throw and exception if called.

Change-Id: Ie37082d94838af8bc2377441165300be65b0eb93
Adding comprehensive testing for the versor initializer

Change-Id: I6faabe589165026d4f5badf9bda1e1c17dc52380
Explicitly use Self qualifier for virtual method in constructor

In the constructor if the Transform class a call to a the virtual
SetPimpleTransform method was done. However since the derived
class hasn't been initialized yet, only the current class's method is
called. Make this explicit.

Change-Id: Ibb9918559d53161173e626ad85d555c7cb0e19b9
Added missing commas in new JSON files

Each of these JSON files was missing 1 or more commas
resulting in invalid JSON syntax.

Change-Id: Ia11aad3165ab0e4d0f501c2bba445a9ee2182dd9
Don't take address of zero sized std::vector

MSVS in debug mode asserts an error when then null values is returned
from a zero sized std::vector. So a special case is added to not set a
zero sized array.

Additional testing is added on the Identity transform for these
Set/Get methods.

Change-Id: I8c34ecd6377091f0d2db8f47b56ae619c78c1b39
Merge topic 'FixZeroSizedParametersSet'

332522e6 Don't take address of zero sized std::vector
Merge topic 'MissingCommasInJSON'

c264516a Added missing commas in new JSON files