public class GenJava_Operation_JgenMdl
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
(package private) java.util.List<FBlock_JgenMdl> |
blocks
Sorted blocks in order of calculation, created in
# . |
(package private) GenJava_Class_JgenMdl |
clazz |
(package private) java.util.Map<java.lang.Integer,FBlock_Port_JgenMdl> |
inports
Inports for this operation.
|
(package private) int |
ixOutRet
Index of the return Output port in the
Module_FBlock_JgenMdl#conout . |
(package private) java.lang.String |
nameOperation |
(package private) Operation_FBlock_JgenMdl |
operationBlock
The block which presents the operation in a block model.
|
(package private) ConnOut_FBcl |
outconRet
The OutConnection of the last block to an
FBlock_Port_JgenMdl is the return value of this operation,
set in #genJava_Operation(Appendable) . |
(package private) FBlock_Port_JgenMdl |
outportRet
outport which is used as return on generating the operation.
|
(package private) java.util.Map<java.lang.Integer,FBlock_Port_JgenMdl> |
outports
Outports for this operation.
|
int |
steptime
The step time of the operation, same as the ports.
|
Constructor and Description |
---|
GenJava_Operation_JgenMdl(GenJava_Class_JgenMdl clazz,
int steptime,
boolean bUpdate) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
completeFBlock_Operation()
Gather dependencies from all
blocks of this operation to other Operation_FBlock_JgenMdl of the same modul (Java class)
and gather the inputs and outputs. |
private void |
fillOperationBlock() |
private void |
genCommentOperation(java.lang.Appendable out,
boolean bUpdateOperation) |
(package private) void |
genJava_CallOperationForAtomicStepOperation(java.lang.Appendable out)
Generates code for a line in step(), see
GenJava_Class_JgenMdl#genAtomicOperations(Appendable) . |
(package private) void |
genJava_Operation(java.lang.Appendable out,
boolean bUpdateOperation)
Output the Java code from all blocks of this part.
|
private void |
genOpHeader(java.lang.Appendable out) |
private void |
genStatements(java.lang.Appendable out,
boolean bUpdate) |
private void |
genStoreInputsOutputs(java.lang.Appendable out) |
(package private) void |
genUpdateStatements(java.lang.Appendable out) |
(package private) void |
setName(FBlock_JgenMdl lastBlock) |
java.lang.String |
toString() |
java.lang.String nameOperation
java.util.Map<java.lang.Integer,FBlock_Port_JgenMdl> inports
java.util.Map<java.lang.Integer,FBlock_Port_JgenMdl> outports
FBlock_Port_JgenMdl.ixPortInModuleBlock
but the operation do not use all ports.FBlock_Port_JgenMdl outportRet
DataType_FBcl.sizeArray
==0 (scalar) it produces a return statement.
On vector it produces a vector element assignment.int ixOutRet
Module_FBlock_JgenMdl#conout
.ConnOut_FBcl outconRet
FBlock_Port_JgenMdl
is the return value of this operation,
set in #genJava_Operation(Appendable)
. It is used in genJava_CallOperationForAtomicStepOperation(Appendable)
.java.util.List<FBlock_JgenMdl> blocks
#
.public int steptime
final Operation_FBlock_JgenMdl operationBlock
clazz
is a library module, then this block will be copied to the instance block.
Or the Module is immediately, then this blocks are used instead the module block.GenJava_Class_JgenMdl clazz
GenJava_Operation_JgenMdl(GenJava_Class_JgenMdl clazz, int steptime, boolean bUpdate)
void completeFBlock_Operation()
blocks
of this operation to other Operation_FBlock_JgenMdl
of the same modul (Java class)
and gather the inputs and outputs.
GenJava_Class_JgenMdl#sortBlocksToOperations()
operationBlock
FBlock_JgenMdl.stm
StatementData_JgenMdl.stms_src
.
inports
. If more as one of blocks
uses the same inport, it is written only one with its key FBlock_Port_JgenMdl.ixPortInModuleBlock
.
outports
adequate with ixPortInModuleBlock
private void fillOperationBlock()
void genJava_Operation(java.lang.Appendable out, boolean bUpdateOperation) throws java.io.IOException
FBlock_JgenMdl.stm
it is an output Block of a Part and it contains a java part code.
StatementData_JgenMdl#order
.
The order of the blocks were calculated by part code generation in #addEnds(FBlock_JgenMdl, FBlock_JgenMdl)
which invokes #orderToStart(FBlock_JgenMdl, int, int)
to store an order number in calculation order.
outJava
- module
- from this modulejava.io.IOException
private void genCommentOperation(java.lang.Appendable out, boolean bUpdateOperation) throws java.io.IOException
java.io.IOException
private void genOpHeader(java.lang.Appendable out) throws java.io.IOException
java.io.IOException
private void genStoreInputsOutputs(java.lang.Appendable out) throws java.io.IOException
java.io.IOException
private void genStatements(java.lang.Appendable out, boolean bUpdate) throws java.io.IOException
java.io.IOException
void genUpdateStatements(java.lang.Appendable out) throws java.io.IOException
java.io.IOException
void setName(FBlock_JgenMdl lastBlock)
void genJava_CallOperationForAtomicStepOperation(java.lang.Appendable out) throws java.io.IOException
GenJava_Class_JgenMdl#genAtomicOperations(Appendable)
.out
- java.io.IOException
public java.lang.String toString()
toString
in class java.lang.Object