Topcoder Plugins

Welcome to the TopCoder plugin exchange forum.  If you are not familiar with www.topcoder.com , then you should consider visiting that page to get an idea how the web site and the contest applet work.

Plugins can come in a variety of forms.  The basic requirement is that the plugin either implement the topcoder interface, described at the howto link at www.topcoder.com , or the interface of another plugin that interfaces with topcoder.  They can interact with a standard editor, or they can be editors themselves.  In the latter case, the editor plugin creates a java JPanel that displays the code and hands it to the contest applet.

Currently the only publicly available topcoder editor is PopsEdit, which is not available here because it is not open source.  You can find the free download here:  Jar , documentation , and release notes .  The other option for editing within the contest applet is to use the applet itself.  Here is TopCoder's description of the command syntax.

To use your own editor, currently the only option is Pops' FileEdit.  FileEdit works by performing all actions on a file in the user's file system, which the editor finds and uses.  Program flow is bascially as follows:

  1. The user opens the problem in the contest arena.
  2. FileEdit parses the problem statement and uses the user's file template to create a shell for the problem solution.
  3. The user switches to his or her preferred editor and finds the file created by FileEdit.  The filename will be unique because the TopCoder classes are unique.
  4. The user implements the desired function and tests it locally.
  5. Assuming that the editor saves when it compiles, the file should be ready for upload when it performs as expected on the local file system.  Simply bring the contest applet to the forground and save or compile.
  6. FileEdit optionally removes the testing code and sends the rest as the completed problem.

If you use either PopsEdit or FileEdit, you can use a parsing editor with it.  CodeProcessor provides the engine for processing, while ProblemParser, TZTester, and RonProc are the extentions.

Currently the following projects are hosted here.

RonProc is hosted at another SourceForge location .