# You should have received a copy of the GNU Lesser General Public License # along with this program. If not, see http://www.gnu.org/licenses/. # from redhawk.codegen.jinja.common import ShellTemplate, AutomakeTemplate, AutoconfTemplate from redhawk.codegen.jinja.loader import CodegenLoader from redhawk.codegen.jinja.mapping import ComponentMapper from redhawk.codegen.jinja.generator import CodeGenerator if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader( __package__, { 'common': 'redhawk.codegen.jinja.common', 'base': 'redhawk.codegen.jinja.cpp.component.base' }) class DependencyDirectoryProjectGenerator(CodeGenerator): def loader(self, project): return loader def templates(self, project): return [ AutomakeTemplate('Makefile.am'), AutoconfTemplate('configure.ac'), ShellTemplate('base/build.sh'), ShellTemplate('common/reconf') ]
from redhawk.codegen.jinja.cpp.component.pull.generator import PullComponentGenerator from redhawk.codegen.jinja.loader import CodegenLoader from redhawk.codegen.jinja.common import ShellTemplate, AutomakeTemplate, AutoconfTemplate from redhawk.codegen.jinja.cpp import CppTemplate from mapping import PersonaComponentMapper if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader( __package__, { 'pull': 'redhawk.codegen.jinja.cpp.component.pull', 'common': 'redhawk.codegen.jinja.common', 'base': 'redhawk.codegen.jinja.cpp.component.base', 'properties': 'redhawk.codegen.jinja.cpp.properties' }) class PersonaComponentGenerator(PullComponentGenerator): def loader(self, component): return loader def componentMapper(self): return PersonaComponentMapper() def templates(self, component): templates = [ CppTemplate('resource.cpp',
from redhawk.codegen import utils from redhawk.codegen.jinja.loader import CodegenLoader from redhawk.codegen.jinja.common import ShellTemplate, AutomakeTemplate, AutoconfTemplate from mapping import BaseComponentMapper from redhawk.codegen.jinja.java import JavaCodeGenerator, JavaTemplate from redhawk.codegen.jinja.java.ports import JavaPortMapper, JavaPortFactory from redhawk.codegen.jinja.java.properties import JavaPropertyMapper if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader(__package__, {'common': 'redhawk.codegen.jinja.common'}) class BaseComponentGenerator(JavaCodeGenerator): # Need to keep use_jni, auto_start and queued_ports to handle legacy options def parseopts(self, java_package='', use_jni=True, auto_start=True, queued_ports=False): self.package = java_package def loader(self, component): return loader def componentMapper(self):
from redhawk.codegen import utils from redhawk.codegen.jinja.loader import CodegenLoader from redhawk.codegen.jinja.common import ShellTemplate, AutomakeTemplate, AutoconfTemplate from redhawk.codegen.jinja.python import PythonCodeGenerator, PythonTemplate from redhawk.codegen.jinja.python.properties import PythonPropertyMapper from redhawk.codegen.jinja.python.ports import PythonPortMapper, PythonPortFactory from mapping import ServiceMapper if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader( __package__, { 'common': 'redhawk.codegen.jinja.common', 'base': 'redhawk.codegen.jinja.python.component.base', 'pull': 'redhawk.codegen.jinja.python.component.pull' }) class ServiceGenerator(PythonCodeGenerator): def parseopts(self, legacy_structs=True): self.legacy_structs = utils.parseBoolean(legacy_structs) def loader(self, service): return loader def componentMapper(self): return ServiceMapper() def propertyMapper(self):
# details. # # You should have received a copy of the GNU Lesser General Public License # along with this program. If not, see http://www.gnu.org/licenses/. # from redhawk.codegen.jinja.common import ShellTemplate, SpecfileTemplate from redhawk.codegen.jinja.generator import TopLevelGenerator from redhawk.codegen.jinja.loader import CodegenLoader from mapping import DependencyProjectMapper if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader(__package__) class DependencyProjectGenerator(TopLevelGenerator): def loader(self, project): return loader def templates(self, project): return [ ShellTemplate('build.sh'), SpecfileTemplate('dependency.spec', project['specfile']) ] def projectMapper(self): return DependencyProjectMapper()
from redhawk.codegen import utils from redhawk.codegen.jinja.loader import CodegenLoader from redhawk.codegen.jinja.common import ShellTemplate, AutomakeTemplate, AutoconfTemplate from redhawk.codegen.jinja.java import JavaTemplate from redhawk.codegen.jinja.java.component.frontend.portfactory import FEIPortFactory from redhawk.codegen.jinja.java.component.pull import PullComponentGenerator from mapping import FrontendComponentMapper, FrontendPropertyMapper if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader( __package__, { 'base': 'redhawk.codegen.jinja.java.component.base', 'pull': 'redhawk.codegen.jinja.java.component.pull', 'common': 'redhawk.codegen.jinja.common' }) class FrontendComponentGenerator(PullComponentGenerator): def map(self, softpkg): component = super(FrontendComponentGenerator, self).map(softpkg) if 'FrontendTuner' in component['implements']: # For FEI tuner devices, disable member variable generation for # properties that are inherited from frontend::FrontendTunerDevice # base class for prop in component['properties']: if prop['javaname'] in ('device_kind', 'device_model', 'frontend_tuner_allocation', 'frontend_listener_allocation',
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # You should have received a copy of the GNU General Public License along with # this program. If not, see http://www.gnu.org/licenses/. # from redhawk.codegen.jinja.common import ShellTemplate, SpecfileTemplate from redhawk.codegen.jinja.project.component.mapping import ProjectMapper from redhawk.codegen.jinja.project.component.generator import ComponentProjectGenerator from redhawk.codegen.jinja.loader import CodegenLoader if not '__package__' in locals(): # Python 2.4 compatibility __package__ = __name__.rsplit('.', 1)[0] loader = CodegenLoader(__package__, {'base': 'redhawk.codegen.jinja.project.component'}) class GnuhawkComponentProjectGenerator(ComponentProjectGenerator): def projectMapper(self): return ProjectMapper() def loader(self, project): return loader def templates(self, project): return [ ShellTemplate('base/build.sh'), SpecfileTemplate('component.spec', project['name'] + '.spec') ]