--- old/buildSrc/src/main/java/com/sun/scenario/effect/compiler/backend/sw/java/JSWBackend.java 2014-02-21 17:02:52.000000000 -0800 +++ new/buildSrc/src/main/java/com/sun/scenario/effect/compiler/backend/sw/java/JSWBackend.java 2014-02-21 17:02:52.000000000 -0800 @@ -63,9 +63,11 @@ public final String getGenCode(String effectName, String peerName, + String genericsName, String interfaceName) { Map vars = parser.getSymbolTable().getGlobalVariables(); + StringBuilder genericsDecl = new StringBuilder(); StringBuilder interfaceDecl = new StringBuilder(); StringBuilder constants = new StringBuilder(); StringBuilder samplers = new StringBuilder(); @@ -208,7 +210,11 @@ posIncrY.append("pos" + i + "_y += inc" + i + "_y;\n"); } } - + + if (genericsName != null) { + genericsDecl.append("<"+genericsName+">"); + } + if (interfaceName != null) { interfaceDecl.append("implements "+interfaceName); } @@ -218,6 +224,7 @@ StringTemplate glue = group.getInstanceOf("glue"); glue.setAttribute("effectName", effectName); glue.setAttribute("peerName", peerName); + glue.setAttribute("genericsDecl", genericsDecl.toString()); glue.setAttribute("interfaceDecl", interfaceDecl.toString()); glue.setAttribute("usercode", usercode.toString()); glue.setAttribute("samplers", samplers.toString());