Skip to content

Commit

Permalink
Merge branch 'SIMPLEITK-51_munged_json' into next
Browse files Browse the repository at this point in the history
* SIMPLEITK-51_munged_json:
  ENH: Added description of auto-generated Doxygen fields

Conflicts:
	Documentation/Doxygen/FilterTemplates.dox
  • Loading branch information
blezek committed May 16, 2011
2 parents a53a4e6 + 0304d29 commit ac7d48a
Showing 1 changed file with 61 additions and 33 deletions.
94 changes: 61 additions & 33 deletions Documentation/Doxygen/FilterTemplates.dox
@@ -1,4 +1,4 @@
/**
/**

\page FilterTemplates Image Filter Templates ReadMe

Expand Down Expand Up @@ -28,39 +28,42 @@ specify data values. A full description of the specification can be found at
http://www.json.org/. For the purposes of SimpleITK, a json file consists of
a single data object (denoted by {}) which contains several string : value
pairs (here value may be a list denoted by []) and sub-objects. Here is an
example from DilateObjectMorphologyImageFilter:
example from LaplacianRecursiveGaussian:

\verbatim
{
"name" : "DilateObjectMorphology",
"template_code_filename" : "StructuringElementImageFilter",
"name" : "LaplacianRecursiveGaussian",
"template_code_filename" : "ImageFilter",
"template_test_filename" : "ImageFilter",
"number_of_inputs" : 1,
"doc" : "Performs Erosion of an object.",
"doc" : "",
"pixel_types" : "BasicPixelIDTypeList",
"members" : [
{ "name" : "ObjectValue",
"type" : "double",
"default" : 1,
"doc" : "Value to assign to object pixels",
"custom_itk_cast" :
"filter->SetObjectValue(static_cast<typename FilterType::PixelType>(this->GetObjectValue()) );"
}
],
"tests" : [
{
"tag" : "float",
"description" : "Dilate a float image",
"inputA" : "Input/RA-Slice-Float.nrrd",
"tolerance" : 0.01
},
{
"tag" : "short",
"description" : "Dilate a short image",
"inputA" : "Input/RA-Slice-Short.nrrd",
"tolerance" : 0.01
}
]
"output_pixel_type" : "float",
"members" : [ {
"name" : "Sigma",
"type" : "double",
"default" : "1.0",
"doc" : "",
"briefdescriptionSet" : "",
"detaileddescriptionSet" : "Set Sigma value. Sigma is measured in the units of image spacing.\n"
}, {
"name" : "NormalizeAcrossScale",
"type" : "bool",
"default" : "0",
"doc" : "",
"briefdescriptionSet" : "",
"detaileddescriptionSet" : "Define which normalization factor will be used for the Gaussian\\see RecursiveGaussianImageFilter::SetNormalizeAcrossScale\n\n",
"briefdescriptionGet" : "",
"detaileddescriptionGet" : ""
} ],
"tests" : [ {
"tag" : "default",
"description" : "Simply run with default settings",
"inputA" : "Input/RA-Float.nrrd",
"settings" : [ ],
"tolerance" : 1.0E-4
} ],
"briefdescription" : "Computes the Laplacian of an image by convolution with the second derivative of a Gaussian.\n",
"detaileddescription" : "This filter is implemented using the recursive gaussian filters\n\n\\li {EdgesAndGradients/LaplacianRecursiveGaussianImageFilter,Compute the Laplacian of an image}\n\n"
}
\endverbatim

Expand Down Expand Up @@ -91,7 +94,17 @@ used to generate the test for this filter. Choices are: "ImageFilter",
filter. Currently, the template system only supports filters with 1 or 2 input
images

- \b doc: (\e string) Global documentation for the filter
- \b briefdescription: (\e string) Brief description of the class
(Doxygen format). This string is automatically generated by the
Utilities/BuildDocs and Utilities/GenerateDocumentation.groovy
scripts. If no corresponding ITK class exists, this field will not
be modified.

- \b detaileddescription: (\e string) More detailed description of the class
(Doxygen format). This string is automatically generated by the
Utilities/BuildDocs and Utilities/GenerateDocumentation.groovy
scripts. If no corresponding ITK class exists, this field will not
be modified.

- \b pixel_types: (\e string) Which of the pixel type lists should be supported
for this filter. The type lists are defined in sitkPixelIDTypeLists.h
Expand Down Expand Up @@ -193,8 +206,11 @@ A basic member object looks like:
"name" : "Sigma",
"type" : "double",
"default" : 1.0,
"doc" : "The sandard deviation for the Gaussian function"
}
"briefdescriptionSet" : "",
"detaileddescriptionSet" : "Define which normalization factor will be used for the Gaussian\\see RecursiveGaussianImageFilter::SetNormalizeAcrossScale\n\n",
"briefdescriptionGet" : "",
"detaileddescriptionGet" : ""
}
\endverbatim

- \b name: (\e string) The name of the member variable. A variable named "Var"
Expand All @@ -209,7 +225,19 @@ additional ${name}On, and ${name}Off member functions are added.
can be a number for numerical types or a string specifying the constructor for
non-basic types (std::vector< unsigned int >() for example)

- \b doc: (\e string) Documentation for this individual parameter
- \b briefdescriptionSet/briefdescriptionGet: (\e string) Brief
Doxygen documentation for this individual parameter. The two forms
(Set/Get) are used for the SetMember and GetMember functions. This
field is automatically generated from ITK's Doxgen for members that
mirror ITK's members. If the member if a custom,
this field will not be modified.

- \b detaileddescriptionSet/detaileddescriptionGet: (\e string)
Detailed Doxygen documentation for this individual parameter. The
two forms (Set/Get) are used for the SetMember and GetMember
functions. This field is automatically generated from ITK's Doxgen
for members that mirror ITK's members. If the member if a custom,
this field will not be modified.

- [OPTIONAL] \b no_set_method: (0 or 1) If set to 1, the filter will not have a
Set method for this member
Expand Down

0 comments on commit ac7d48a

Please sign in to comment.