# Factory Registration Managers

**URL:** <https://discourse.itk.org/t/factory-registration-managers/573>\
**Category:** Engineering\
**Created:** [January 5, 2018, 6:04pm UTC](https://discourse.itk.org/t/factory-registration-managers/573 "2018-01-05T18:04:15Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![matt.mccormick](https://discourse.itk.org/user_avatar/discourse.itk.org/matt.mccormick/32/7_2.png) [@matt.mccormick](https://discourse.itk.org/u/matt.mccormick)\
**Post date:** [January 5, 2018, 6:15pm UTC](https://discourse.itk.org/t/factory-registration-managers/573/2 "2018-01-05T18:15:36Z")

</div>

Hello Tim!

Happy 2018! 🙂

The best source of documentation is current found in [comments of the `UseITK.cmake` file](https://github.com/InsightSoftwareConsortium/ITK/blob/7e9481d1ff8bd3076aa9a534dae2b82a912b6f74/CMake/UseITK.cmake#L33-L156). 🎩 h/t @jcfr

In summary, these files, when included in an executable or library, will register the available `itk::ImageIOBase` classes to the object factory, so `itk::ImageFileReader` and `itk::ImageFileWriter` can find and use them.

This, of course, depends on the available ImageIO modules that ITK has available (depends on ITK’s build options and any external modules). The infrastructure was improved even further [in ITK 4.13.0](https://discourse.itk.org/t/itk-4-13-has-been-released/549), which makes the use of CMake even more appealing. 🎩 h/t @fbudin

HTH,  
Matt

---

_[View the full topic](https://discourse.itk.org/t/factory-registration-managers/573)._
