package jas2.plugin;

import jas2.jds.module.LocalDIM;
import jas2.util.JASWizardPage;

/**
 * Support for Java Analysis Studio Extension Plugins 
 *
 * The Plugin class is used to extend the functionality of Java Analysis Studio with experiment, group, or personal
 * extensions. Java Analysis Studio plugins extend the Plugin class in a similar manner that web applets 
 * extend Applet. Plugins are a little more flexible than web applets however, since plugins can add new items to the
 * Java Analysis Studio menu, create windows in the main body of the application, and interact with event data.
 * 

* A typical use for a plugin would be to provide an experient specific event display within the * body of the Java Analysis Studio application. *

* The current plugin functionality is fairly limited, more will be added in later releases. Send suggestions for * improve functionality to jas-feedback@sld-mail.slac.stanford.edu *

* Note: Most of the methods of Plugin require a context, and therefore should not be called before the * Plugin is initialized (i.e. its init() method is called). * * @see Plugin */ public abstract class ExtensionPlugin extends BasicPlugin implements IExtensionPlugin { /** * Called by the application before the plugins init method is called, to install the PluginContext */ public void setPluginContext(ExtensionPluginContext context) { this.context = context; super.setPluginContext(context); } /** * Provides access to the PluginContext. * It is better to use the many utility methods in Plugin rather than * accessing the PluginContext directly. */ public ExtensionPluginContext getPluginContext() { return context; } /** * Register a LocalDIM */ public void registerDIM(LocalDIM dim) { context.registerDIM(dim); } /** * Register a Job Type */ public void registerJobType(String name, JASWizardPage wizardPage) { context.registerJobType(name,wizardPage); } private ExtensionPluginContext context; }

Ads help maintain this website.