Difference between revisions of "The MIRC Module"

From MircWiki
Jump to navigation Jump to search
m (Protected "The MIRC Module" ([edit=sysop] (indefinite) [move=sysop] (indefinite)))
(No difference)

Revision as of 13:54, 26 December 2012


The MIRC module (MIRC.jar) contains the code of the CTP plugin that implements TFS, the RSNA Teaching File System. This article describes the theory of operation of the packages contained in the MIRC module. The intended audience for this article is software engineers extending or maintaining any of that software.

See Setting Up a MIRC Development Environment for information on obtaining and building the MIRC module.

The MIRC module contains many packages. In general, major system functions (as well as some minor ones) are encapsulated in their own packages, but because many functions interact, this principle is not universally maintained. Most system functions have classes and files that are contained in the jar file. Often, the files are XSL programs used for the generation of web pages or Javascript and CSS files referenced by the web pages. These files are served directly from the jar file without having to be installed on the disk. See The Util Module for a description of how the server serves files from the classpath.


  • org.rsna.ctp contains the CTP main class and the Configuration singleton class.
  • org.rsna.ctp.objects contains classes that implement the four types of objects that CTP can process.
  • org.rsna.ctp.pipeline contains the Pipeline class, interfaces that define the types of pipeline stages, and a set of abstract classes that provide starting points for developing each pipeline stage type.
  • org.rsna.ctp.plugin contains the interface that defines a plugin and an abstract class that provides a starting point for developing a plugin.
  • org.rsna.ctp.servlets contains the standard servlets used in CTP.
  • org.rsna.ctp.stdstages contains the standard pipeline stages included in CTP.

Each of these packages will be described in the sections below, with example code where necessary to illustrate the theory of operation. It will be helpful to get the source code and build it so you can reference the Javadocs as you go along.