From f4d912843ded13c25bbc9a4a3535f7e5bccf7e05 Mon Sep 17 00:00:00 2001 From: Mayank Chaudhary <chaudhary@fortiss.org> Date: Tue, 8 Mar 2016 11:36:20 +0000 Subject: [PATCH] Executables for Raspberry platform elements refs 2507 --- ...yPlatformHierarchicalCompositionRules.java | 60 ++++++++++++ .../executable/ActuatorExecutable.java | 74 +++++++++++++++ .../executable/ActuatorOutExecutable.java | 74 +++++++++++++++ .../generator/executable/BusExecutable.java | 56 ++++++++++++ .../BusMasterInterfaceExecutable.java | 91 +++++++++++++++++++ .../executable/BusMasterPortExecutable.java | 91 +++++++++++++++++++ .../executable/CANBusExecutable.java | 56 ++++++++++++ .../generator/executable/CoreExecutable.java | 73 +++++++++++++++ .../executable/RaspberryPi1Executable.java | 40 ++++++++ .../executable/RaspberryPi2Executable.java | 40 ++++++++ .../executable/RaspberryPi3Executable.java | 40 ++++++++ .../executable/SensorExecutable.java | 74 +++++++++++++++ .../executable/SensorInExecutable.java | 74 +++++++++++++++ 13 files changed, 843 insertions(+) create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compositor/RaspberryPlatformHierarchicalCompositionRules.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorOutExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterInterfaceExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterPortExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CANBusExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CoreExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi1Executable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi2Executable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi3Executable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorExecutable.java create mode 100644 org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorInExecutable.java diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compositor/RaspberryPlatformHierarchicalCompositionRules.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compositor/RaspberryPlatformHierarchicalCompositionRules.java new file mode 100644 index 00000000..b6ecf4a0 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/compositor/RaspberryPlatformHierarchicalCompositionRules.java @@ -0,0 +1,60 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.compositor; + +import org.eclipse.emf.common.util.BasicEList; +import org.eclipse.emf.common.util.EList; +import org.fortiss.af3.platform.compose.IPlatformHierarchicalCompositionRules; +import org.fortiss.af3.platform.compose.PlatformHierarchicalCompositionRulesBase; +import org.fortiss.af3.platform.model.IArchitectureDomain; +import org.fortiss.af3.platform.model.IPlatformDomain; +import org.fortiss.af3.platform.raspberry.model.IBoardDomain; +import org.fortiss.af3.platform.raspberry.model.IProcessorDomain; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class RaspberryPlatformHierarchicalCompositionRules extends + PlatformHierarchicalCompositionRulesBase { + + /** Singleton pattern. */ + public static IPlatformHierarchicalCompositionRules INSTANCE = + new RaspberryPlatformHierarchicalCompositionRules(); + + /** {@inheritDoc} */ + @Override + public EList<Class<? extends IArchitectureDomain>> getAdmissibleChildDomains( + Class<? extends IArchitectureDomain> domain) { + EList<Class<? extends IArchitectureDomain>> rval = + new BasicEList<Class<? extends IArchitectureDomain>>(); + + if(domain.equals(IPlatformDomain.class)) { + rval.add(IBoardDomain.class); + } else if(hasEqualLevel(domain, IPlatformDomain.class)) { + rval.add(IPlatformDomain.class); + } else if(hasEqualLevel(domain, IBoardDomain.class)) { + rval.add(IProcessorDomain.class); + } + return rval; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorExecutable.java new file mode 100644 index 00000000..86405b37 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorExecutable.java @@ -0,0 +1,74 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.OutputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.IWritableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.TransmitterExecutableBase; +import org.fortiss.af3.platform.raspberry.model.Actuator; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class ActuatorExecutable extends TransmitterExecutableBase<Actuator> implements + IInitializableExecutable, ITerminatableExecutable, IWritableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public ActuatorExecutable(Actuator modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorOutExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorOutExecutable.java new file mode 100644 index 00000000..83d6cb1d --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/ActuatorOutExecutable.java @@ -0,0 +1,74 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.OutputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.IWritableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.TransmitterExecutableBase; +import org.fortiss.af3.platform.raspberry.model.ActuatorOut; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class ActuatorOutExecutable extends TransmitterExecutableBase<ActuatorOut> implements + IInitializableExecutable, ITerminatableExecutable, IWritableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public ActuatorOutExecutable(ActuatorOut modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusExecutable.java new file mode 100644 index 00000000..1f555bbc --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusExecutable.java @@ -0,0 +1,56 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import java.util.List; +import java.util.Map; + +import org.fortiss.af3.component.model.Component; +import org.fortiss.af3.component.model.Port; +import org.fortiss.af3.generator.common.model.source.SourcePackage; +import org.fortiss.af3.platform.language.executable.TransmissionUnitExecutableBase; +import org.fortiss.af3.platform.model.ExecutionUnit; +import org.fortiss.af3.platform.model.TransmissionUnit; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class BusExecutable extends TransmissionUnitExecutableBase<TransmissionUnit> { + + /** + * @param modelElement + */ + public BusExecutable(TransmissionUnit modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public void createAllFiles(SourcePackage pack, Map<ExecutionUnit, List<Port>> euPortsPair, + Map<ExecutionUnit, List<Component>> euComponentList, Component topComponent, + int deploymentID) { + // TODO Auto-generated method stub + + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterInterfaceExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterInterfaceExecutable.java new file mode 100644 index 00000000..c48cf6c7 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterInterfaceExecutable.java @@ -0,0 +1,91 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.InputPort; +import org.fortiss.af3.component.model.OutputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.IReadableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.IWritableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.TransceiverExecutableBase; +import org.fortiss.af3.platform.raspberry.model.BusMasterInterface; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class BusMasterInterfaceExecutable extends TransceiverExecutableBase<BusMasterInterface> + implements IInitializableExecutable, ITerminatableExecutable, + IReadableExecutableWithNoValSupport, IWritableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public BusMasterInterfaceExecutable(BusMasterInterface modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterPortExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterPortExecutable.java new file mode 100644 index 00000000..c19fd395 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/BusMasterPortExecutable.java @@ -0,0 +1,91 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.InputPort; +import org.fortiss.af3.component.model.OutputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.IReadableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.IWritableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.TransceiverExecutableBase; +import org.fortiss.af3.platform.raspberry.model.BusMasterPort; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class BusMasterPortExecutable extends TransceiverExecutableBase<BusMasterPort> implements + IInitializableExecutable, ITerminatableExecutable, IReadableExecutableWithNoValSupport, + IWritableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public BusMasterPortExecutable(BusMasterPort modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueWriteAccessor(OutputPort logicalSignal, IExpressionTerm value) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValWriteAccessor(OutputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CANBusExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CANBusExecutable.java new file mode 100644 index 00000000..9b5a4a57 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CANBusExecutable.java @@ -0,0 +1,56 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import java.util.List; +import java.util.Map; + +import org.fortiss.af3.component.model.Component; +import org.fortiss.af3.component.model.Port; +import org.fortiss.af3.generator.common.model.source.SourcePackage; +import org.fortiss.af3.platform.language.executable.TransmissionUnitExecutableBase; +import org.fortiss.af3.platform.model.ExecutionUnit; +import org.fortiss.af3.platform.model.TransmissionUnit; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class CANBusExecutable extends TransmissionUnitExecutableBase<TransmissionUnit> { + + /** + * @param modelElement + */ + public CANBusExecutable(TransmissionUnit modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public void createAllFiles(SourcePackage pack, Map<ExecutionUnit, List<Port>> euPortsPair, + Map<ExecutionUnit, List<Component>> euComponentList, Component topComponent, + int deploymentID) { + // TODO Auto-generated method stub + + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CoreExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CoreExecutable.java new file mode 100644 index 00000000..9f4401f4 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/CoreExecutable.java @@ -0,0 +1,73 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import java.util.List; + +import org.conqat.lib.commons.collections.Pair; +import org.fortiss.af3.component.model.Component; +import org.fortiss.af3.component.model.Port; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.generator.common.model.c.CSourcePackage; +import org.fortiss.af3.platform.language.executable.ExecutionUnitExecutableBase; +import org.fortiss.af3.platform.model.ExecutionUnit; +import org.fortiss.af3.platform.model.PlatformConnectorUnit; +import org.fortiss.af3.platform.raspberry.model.Core; +import org.fortiss.tooling.kernel.extension.data.ITransformationContext; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class CoreExecutable extends ExecutionUnitExecutableBase<Core, CSourcePackage> { + + /** + * @param modelElement + */ + public CoreExecutable(Core modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + protected CSourcePackage createExecutionUnitSourcePackage(String name, + List<Pair<ExecutionUnit, Component>> deployedComponents, + List<Pair<PlatformConnectorUnit, Port>> deployedPorts, ITransformationContext context) { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi1Executable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi1Executable.java new file mode 100644 index 00000000..74718c69 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi1Executable.java @@ -0,0 +1,40 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.platform.language.executable.GenericPlatformUnitExecutableBase; +import org.fortiss.af3.platform.raspberry.model.RaspberryPi1; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class RaspberryPi1Executable extends GenericPlatformUnitExecutableBase<RaspberryPi1> { + + /** + * @param modelElement + */ + public RaspberryPi1Executable(RaspberryPi1 modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi2Executable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi2Executable.java new file mode 100644 index 00000000..d533aaf9 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi2Executable.java @@ -0,0 +1,40 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.platform.language.executable.GenericPlatformUnitExecutableBase; +import org.fortiss.af3.platform.raspberry.model.RaspberryPi2; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class RaspberryPi2Executable extends GenericPlatformUnitExecutableBase<RaspberryPi2> { + + /** + * @param modelElement + */ + public RaspberryPi2Executable(RaspberryPi2 modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi3Executable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi3Executable.java new file mode 100644 index 00000000..a73b2105 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/RaspberryPi3Executable.java @@ -0,0 +1,40 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.platform.language.executable.GenericPlatformUnitExecutableBase; +import org.fortiss.af3.platform.raspberry.model.RaspberryPi3; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class RaspberryPi3Executable extends GenericPlatformUnitExecutableBase<RaspberryPi3> { + + /** + * @param modelElement + */ + public RaspberryPi3Executable(RaspberryPi3 modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorExecutable.java new file mode 100644 index 00000000..3b1a834f --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorExecutable.java @@ -0,0 +1,74 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.InputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.IReadableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.ReceiverExecutableBase; +import org.fortiss.af3.platform.raspberry.model.Sensor; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class SensorExecutable extends ReceiverExecutableBase<Sensor> implements + IInitializableExecutable, ITerminatableExecutable, IReadableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public SensorExecutable(Sensor modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorInExecutable.java b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorInExecutable.java new file mode 100644 index 00000000..fa3912b0 --- /dev/null +++ b/org.fortiss.af3.platform.raspberry/trunk/src/org/fortiss/af3/platform/raspberry/generator/executable/SensorInExecutable.java @@ -0,0 +1,74 @@ +/*--------------------------------------------------------------------------+ +$Id$ +| | +| Copyright 2016 ForTISS GmbH | +| | +| Licensed under the Apache License, Version 2.0 (the "License"); | +| you may not use this file except in compliance with the License. | +| You may obtain a copy of the License at | +| | +| http://www.apache.org/licenses/LICENSE-2.0 | +| | +| Unless required by applicable law or agreed to in writing, software | +| distributed under the License is distributed on an "AS IS" BASIS, | +| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | +| See the License for the specific language governing permissions and | +| limitations under the License. | ++--------------------------------------------------------------------------*/ +package org.fortiss.af3.platform.raspberry.generator.executable; + +import org.fortiss.af3.component.model.InputPort; +import org.fortiss.af3.expression.model.terms.IExpressionTerm; +import org.fortiss.af3.platform.language.executable.IInitializableExecutable; +import org.fortiss.af3.platform.language.executable.IReadableExecutableWithNoValSupport; +import org.fortiss.af3.platform.language.executable.ITerminatableExecutable; +import org.fortiss.af3.platform.language.executable.ReceiverExecutableBase; +import org.fortiss.af3.platform.raspberry.model.SensorIn; + +/** + * + * @author chaudhary + * @author $Author$ + * @version $Rev$ + * @ConQAT.Rating RED Hash: + */ +public class SensorInExecutable extends ReceiverExecutableBase<SensorIn> implements + IInitializableExecutable, ITerminatableExecutable, IReadableExecutableWithNoValSupport { + + /** + * @param modelElement + */ + public SensorInExecutable(SensorIn modelElement) { + super(modelElement); + // TODO Auto-generated constructor stub + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getValueReadAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getNoValGuardAccessor(InputPort logicalSignal) { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getTermination() { + // TODO Auto-generated method stub + return null; + } + + /** {@inheritDoc} */ + @Override + public IExpressionTerm getInitialization() { + // TODO Auto-generated method stub + return null; + } + +} -- GitLab