Skip to content
Snippets Groups Projects
Commit f8708edd authored by Zabir Haider Khan's avatar Zabir Haider Khan
Browse files

changes in format for function calls:

read_<peripheral>(pinNr)  -> read_<peripheral>(pinNr, varName)
write_<peripheral>(pinNr)  -> write_<peripheral>(pinNr, varName)
parent e9d8d5cf
No related branches found
No related tags found
No related merge requests found
...@@ -63,10 +63,12 @@ public class ActuatorOutExecutable extends TransmitterExecutableBase<ActuatorOut ...@@ -63,10 +63,12 @@ public class ActuatorOutExecutable extends TransmitterExecutableBase<ActuatorOut
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
/* generates call: write_Actuator(pinNr, varName) */
public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) { public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) {
PinNumber ias = getAnnotation(modelElement, PinNumber.class); PinNumber ias = getAnnotation(modelElement, PinNumber.class);
int pinNr = ias.getPinNumber(); int pinNr = ias.getPinNumber();
return funcCall("write_Actuator", ExpressionModelElementFactory.createVar(pinNr + "")); return funcCall("write_Actuator", ExpressionModelElementFactory.createVar(pinNr + ""),
ExpressionModelElementFactory.createVar(logicalSignal.getName() + ""));
} }
...@@ -78,11 +80,13 @@ public class ActuatorOutExecutable extends TransmitterExecutableBase<ActuatorOut ...@@ -78,11 +80,13 @@ public class ActuatorOutExecutable extends TransmitterExecutableBase<ActuatorOut
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
/* generates call: write_Actuator(pinNr, varName) */
public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value, public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value,
Deployment depl) { Deployment depl) {
PinNumber ias = getAnnotation(modelElement, PinNumber.class); PinNumber ias = getAnnotation(modelElement, PinNumber.class);
int pinNr = ias.getPinNumber(); int pinNr = ias.getPinNumber();
return funcCall("write_Actuator", ExpressionModelElementFactory.createVar(pinNr + "")); return funcCall("write_Actuator", ExpressionModelElementFactory.createVar(pinNr + ""),
ExpressionModelElementFactory.createVar(logicalSignal.getName() + ""));
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
......
...@@ -31,7 +31,6 @@ import org.fortiss.af3.expression.model.terms.IExpressionTerm; ...@@ -31,7 +31,6 @@ import org.fortiss.af3.expression.model.terms.IExpressionTerm;
import org.fortiss.af3.expression.utils.ExpressionModelElementFactory; import org.fortiss.af3.expression.utils.ExpressionModelElementFactory;
import org.fortiss.af3.platform.language.executable.TransceiverExecutableBase; import org.fortiss.af3.platform.language.executable.TransceiverExecutableBase;
import org.fortiss.af3.platform.model.ExecutionUnit; import org.fortiss.af3.platform.model.ExecutionUnit;
import org.fortiss.af3.platform.model.IPlatformArchitectureElement;
import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.IReadExecutableWithNoValSupport; import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.IReadExecutableWithNoValSupport;
import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.ITermExecutable; import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.ITermExecutable;
import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.IWriteExecutableWithNoValSupport; import org.fortiss.af3.platform.raspberry.generator.executable.interfaces.IWriteExecutableWithNoValSupport;
...@@ -61,18 +60,13 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster ...@@ -61,18 +60,13 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public IExpressionTerm getInitialization(Deployment depl) { public IExpressionTerm getInitialization(Deployment depl) {
int coreId = getParentCoreId(depl); return funcCall("init_" + modelElement.getName());
return funcCall("init_" + modelElement.getName(),
ExpressionModelElementFactory.createVar(coreId + ""));
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public IExpressionTerm getTermination(Deployment depl) { public IExpressionTerm getTermination(Deployment depl) {
int coreId = getParentCoreId(depl); return funcCall("term_" + modelElement.getName());
return funcCall("term_" + modelElement.getName(),
ExpressionModelElementFactory.createVar(coreId + ""));
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
...@@ -107,7 +101,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster ...@@ -107,7 +101,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) { public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) {
return funcCall("is_noval_" + modelElement.getName());// + "_" + logicalSignal.getName() return funcCall("is_noval_" + modelElement.getName());
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
...@@ -124,11 +118,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster ...@@ -124,11 +118,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster
return null; return null;
} }
/** /** Gets the address for the core that drives the Input Port */
* @param logicalSignal
* @return
* returns core ID
*/
private int getSourceCoreAddress(InputPort logicalSignal, Deployment depl) { private int getSourceCoreAddress(InputPort logicalSignal, Deployment depl) {
EList<Channel> channels = logicalSignal.getIncomingChannels(); EList<Channel> channels = logicalSignal.getIncomingChannels();
...@@ -139,11 +129,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster ...@@ -139,11 +129,7 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster
return ias.getCoreAddress();// sourceCore.getId(); return ias.getCoreAddress();// sourceCore.getId();
} }
/** /** Gets the address for the core that acts as sink for the Output Port */
* @param logicalSignal
* @return
* returns core ID
*/
private int getTargetCoreAddress(OutputPort logicalSignal, Deployment depl) { private int getTargetCoreAddress(OutputPort logicalSignal, Deployment depl) {
EList<Channel> channels = logicalSignal.getOutgoingChannels(); EList<Channel> channels = logicalSignal.getOutgoingChannels();
// get one of the channels, usually only one channel will be connected per output port // get one of the channels, usually only one channel will be connected per output port
...@@ -160,17 +146,6 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster ...@@ -160,17 +146,6 @@ public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMaster
return null; return null;
} }
/**
* @param depl
* @return
* returns parent core ID
*/
private int getParentCoreId(Deployment depl) {
IPlatformArchitectureElement parentElement = modelElement.getPlatformElement();
CoreAddress ias = getAnnotation(parentElement, CoreAddress.class);
return ias.getCoreAddress();
}
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public IExpressionTerm getTermination() { public IExpressionTerm getTermination() {
......
...@@ -52,7 +52,7 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme ...@@ -52,7 +52,7 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
public IExpressionTerm getInitialization() { public IExpressionTerm getInitialization() {
return funcCall("init_Sensor");// + modelElement.getName() return funcCall("init_Sensor");
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
...@@ -63,11 +63,12 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme ...@@ -63,11 +63,12 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
/* generates call: read_Sensor(pinNr, varName) */
public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) { public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) {
PinNumber ias = getAnnotation(modelElement, PinNumber.class); PinNumber ias = getAnnotation(modelElement, PinNumber.class);
int pinNr = ias.getPinNumber(); int pinNr = ias.getPinNumber();
return funcCall("read_Sensor", ExpressionModelElementFactory.createVar(pinNr + ""),
return funcCall("read_Sensor", ExpressionModelElementFactory.createVar(pinNr + "")); ExpressionModelElementFactory.createVar(logicalSignal.getName() + ""));
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
...@@ -78,11 +79,12 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme ...@@ -78,11 +79,12 @@ public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> impleme
/** {@inheritDoc} */ /** {@inheritDoc} */
@Override @Override
/* generates call: read_Sensor(pinNr, varName) */
public IExpressionTerm getValueReadAccessor(InputPort logicalSignal, Deployment depl) { public IExpressionTerm getValueReadAccessor(InputPort logicalSignal, Deployment depl) {
PinNumber ias = getAnnotation(modelElement, PinNumber.class); PinNumber ias = getAnnotation(modelElement, PinNumber.class);
int pinNr = ias.getPinNumber(); int pinNr = ias.getPinNumber();
return funcCall("read_Sensor", ExpressionModelElementFactory.createVar(pinNr + ""),
return funcCall("read_Sensor", ExpressionModelElementFactory.createVar(pinNr + "")); ExpressionModelElementFactory.createVar(logicalSignal.getName() + ""));
} }
/** {@inheritDoc} */ /** {@inheritDoc} */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment