Author: paperwing
Date: 2012-02-12 18:31:35 -0800 (Sun, 12 Feb 2012)
New Revision: 28242
Added:
csplugins/trunk/toronto/yuedong/multi_renderer/api/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngineFactoryManager.java
Log:
Initial version of RenderingEngineFactoryManager API service
Added:
csplugins/trunk/toronto/yuedong/multi_renderer/api/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngineFactoryManager.java
===================================================================
---
csplugins/trunk/toronto/yuedong/multi_renderer/api/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngineFactoryManager.java
(rev 0)
+++
csplugins/trunk/toronto/yuedong/multi_renderer/api/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngineFactoryManager.java
2012-02-13 02:31:35 UTC (rev 28242)
@@ -0,0 +1,69 @@
+package org.cytoscape.view.presentation;
+
+/**
+ * This interface represents a manager service for
+ * {@link RenderingEngineFactory} objects. Renderer implementations should add
+ * their {@link RenderingEngineFactory} objects to this manager.
+ */
+public interface RenderingEngineFactoryManager {
+
+ /**
+ * An enumeration containing a list of possible types of
RenderingEngineFactory objects. Some RenderingEngineFactory objects may be
+ * used for creating bird's eye view RenderingEngines, or for creating
main window RenderingEngines.
+ */
+ public enum RenderingEngineFactoryType {
+ BIRDS_EYE,
+ MAIN_WINDOW,
+ VISUAL_STYLE_PREVIEW
+ }
+
+ /**
+ * Adds the given {@link RenderingEngineFactory} to the manager,
associating it with the given renderer ID and the given renderer type.
+ *
+ * @param renderingEngineFactory
+ * @param rendererID The ID of the renderer, which is the renderer name.
+ * @param rendererType The type of the renderer, such as bird's eye
view or main, via the {@link RenderingEngineFactoryType} enumeration.
+ */
+ public void addRenderingEngineFactory(RenderingEngineFactory<?>
renderingEngineFactory, String rendererID, RenderingEngineFactoryType
rendererType);
+
+ /**
+ * If one exists, returns the {@link RenderingEngineFactory} associated
with the given renderer ID and renderer type. Otherwise,
+ * returns null.
+ *
+ * @param rendererID The ID of the renderer, which is the renderer name.
+ * @param rendererType The type of the renderer, such as bird's eye
view or main, via the {@link RenderingEngineFactoryType} enumeration.
+ * @return The {@link RenderingEngineFactory} associated with the given
renderer ID and renderer type, or null if none exist.
+ */
+ public RenderingEngineFactory<?> getRenderingEngineFactory(String
rendererID, RenderingEngineFactoryType rendererType);
+
+ /**
+ * Removes the given {@link RenderingEngineFactory} from the manager.
+ *
+ * @param renderingEngineFactory The {@link RenderingEngineFactory} to
be removed.
+ */
+ public void removeRenderingEngineFactory(RenderingEngineFactory<?>
renderingEngineFactory);
+
+ /**
+ * Removes the {@link RenderingEngineFactory} associated with the given
renderer ID and of the given renderer type, such as bird's eye view.
+ *
+ * @param rendererID The ID of the renderer, which is the renderer name.
+ * @param rendererType The type of the renderer, such as bird's eye
view or main, via the {@link RenderingEngineFactoryType} enumeration.
+ */
+ public void removeRenderingEngineFactory(String rendererID,
RenderingEngineFactoryType rendererType);
+
+ /**
+ * Removes all {@link RenderingEngineFactory} objects associated with
the given rendererID.
+ *
+ * @param rendererID The ID of the renderer, which is the renderer name.
+ */
+ public void removeRenderingEngineFactory(String rendererID);
+}
+
+
+
+
+/* TODO:
+ * Formalize bird's eye view and main RenderingEngineFactories
+ * -separate visual style preview, bird's eye, main window
+ *
+ */
\ No newline at end of file
Property changes on:
csplugins/trunk/toronto/yuedong/multi_renderer/api/presentation-api/src/main/java/org/cytoscape/view/presentation/RenderingEngineFactoryManager.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.