Revision: 343 http://skycastle.svn.sourceforge.net/skycastle/?rev=343&view=rev Author: zzorn Date: 2008-01-06 05:10:24 -0800 (Sun, 06 Jan 2008) Log Message: ----------- Added refactoring comment Modified Paths: -------------- trunk/skycastle/modules/texture/src/main/java/org/skycastle/texture/component/Component.java Modified: trunk/skycastle/modules/texture/src/main/java/org/skycastle/texture/component/Component.java =================================================================== --- trunk/skycastle/modules/texture/src/main/java/org/skycastle/texture/component/Component.java 2008-01-06 13:09:18 UTC (rev 342) +++ trunk/skycastle/modules/texture/src/main/java/org/skycastle/texture/component/Component.java 2008-01-06 13:10:24 UTC (rev 343) @@ -12,23 +12,24 @@ * <p/> * The calculated outputs can be queried with getters. * <p/> - * TODO: Decouple the component logic/implementation from the connections the component has with other components in a specific Design? + * TODO: Decouple the component logic/implementation from the connections the component has with other components in a + * specific Design? * <p/> * TODO: Support different types for the inputs and outputs? * <p/> - * IDEA: Ability to define output groups, e.g. color = red, green, and blue port (of double type). - * Could be used for directions, normals, etc. Would be just a shorthand instead of connecting all the lines one after each other. - * Should it apply to exising modules/components (match by name), or should the component itself define if it is using it? + * IDEA: Ability to define output groups, e.g. color = red, green, and blue port (of double type). Could be used for + * directions, normals, etc. Would be just a shorthand instead of connecting all the lines one after each other. Should + * it apply to exising modules/components (match by name), or should the component itself define if it is using it? * <p/> - * IDEA: Some kind of interfaces for components, specifying some names inputs and outputs that need to be available, - * and generally specifying some 'class' of object (e.g. room, or road type, etc). + * IDEA: Some kind of interfaces for components, specifying some names inputs and outputs that need to be available, and + * generally specifying some 'class' of object (e.g. room, or road type, etc). */ +// REFACTOR: Replace with GameObject, using game object properties instead of the input and output ports. - Although, we'd need a system that can work on a pixel level... public interface Component { /** - * @return an user readable identifier for the component. - * The identifier must be a valid Java identifier, - * and should be unique in the CompositeComponent that this Component is located in. + * @return an user readable identifier for the component. The identifier must be a valid Java identifier, and should + * be unique in the CompositeComponent that this Component is located in. */ String getName(); @@ -60,31 +61,32 @@ /** * Sets the input source to use for the specified input port. * - * @param inputPortName the name of the input port to set the source for. - * If not found, an IllegalArgumentException is thrown. - * @param sourcePort the port that should provide the input value for the specified input port, - * or null if a constant value should be used instead. + * @param inputPortName the name of the input port to set the source for. If not found, an IllegalArgumentException + * is thrown. + * @param sourcePort the port that should provide the input value for the specified input port, or null if a + * constant value should be used instead. */ void setInput( String inputPortName, OutputPort sourcePort ); /** * Sets the input value to use for the specified input port. * - * @param inputPortName the name of the input port to set the value for. - * If not found, an IllegalArgumentException is thrown. - * @param value the value that should be used for the specified input port. Only used if there is no source port specified - * for the specified input port. + * @param inputPortName the name of the input port to set the value for. If not found, an IllegalArgumentException + * is thrown. + * @param value the value that should be used for the specified input port. Only used if there is no source + * port specified for the specified input port. */ void setInput( String inputPortName, Object value ); /** - * @return the CompositeComponent that this component belongs to, or null if it doesn't belong to any CompositeComponent. + * @return the CompositeComponent that this component belongs to, or null if it doesn't belong to any + * CompositeComponent. */ CompositeComponent getContainer(); /** - * @param container the CompositeComponent that this component should be added to, - * or null if it should be removed from its CompositeComponent. + * @param container the CompositeComponent that this component should be added to, or null if it should be removed + * from its CompositeComponent. */ void setContainer( CompositeComponent container ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.