Source code: engine/ModuleFactory.java
1 /* **********************************
2 File:Modulefactory.java
3 Author: Alec(panovici@elcom.pub.ro)
4 Created on 12.02.1999 02:42:51
5 Comments: Part of the vIDE Project
6 Copyright 1999 the vIDE Team.
7 ***********************************/
8
9 package engine;
10
11 import java.util.*;
12 import middle.*;
13 import java.io.Serializable;
14
15 /**
16 * Used by ModuleInstnceDescription to create a
17 * new module instance by calling createNewModule on the
18 * descriptor. Its use is that provides a means of hiding the
19 * specific module interfacing mechanism (for an example UDPs
20 * have internal wires for ports while standard primitives
21 * are 'void', etc.) from the ModuleInstanceDescription, which
22 * is a common class to all module instances.
23 */
24
25 public interface ModuleFactory extends Serializable{
26 /*
27 * The exception should not normally be caught,
28 * since it is thrown from an instantiateAll
29 * (it has a well formed error message)
30 */
31 Object createNewModule(NameSpace parent,
32 ModuleInstanceDescription miDesc,
33 byte strength,
34 ScopeNode scope) throws ParseException;
35
36 Object createNewModuleArray(NameSpace parent,
37 ModuleInstanceDescription miDesc,
38 byte strength,
39 ScopeNode scope, int ars, int are,
40 int n, int increment)
41 throws ParseException;
42
43 /**
44 * Sets the parameters for the
45 * following instantiations.
46 */
47 void setParams(Vector results, Delay3 delays) throws ParseException;
48
49 /**
50 * Reverses the parameters to their default values.
51 */
52 void unsetParams();
53
54 boolean isTop();
55
56 String name();
57 }
58
59
60
61