Moved code into submodules
This commit is contained in:
parent
bda1752c53
commit
899ca234ce
88
.cproject
88
.cproject
@ -1,88 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
|
||||||
<cconfiguration id="0.243909357">
|
|
||||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.243909357" moduleId="org.eclipse.cdt.core.settings" name="Default">
|
|
||||||
<externalSettings/>
|
|
||||||
<extensions>
|
|
||||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
|
||||||
</extensions>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
|
||||||
<configuration artifactName="${ProjName}" buildProperties="" description="" id="0.243909357" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg">
|
|
||||||
<folderInfo id="0.243909357." name="/" resourcePath="">
|
|
||||||
<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.230974560" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
|
|
||||||
<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.230974560.1020516125" name=""/>
|
|
||||||
<builder id="org.eclipse.cdt.build.core.settings.default.builder.1750223979" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
|
|
||||||
<tool id="org.eclipse.cdt.build.core.settings.holder.libs.1329659482" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
|
|
||||||
<tool id="org.eclipse.cdt.build.core.settings.holder.164361898" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">
|
|
||||||
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.91955504" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
|
|
||||||
</tool>
|
|
||||||
<tool id="org.eclipse.cdt.build.core.settings.holder.587173658" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">
|
|
||||||
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.752272386" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
|
|
||||||
</tool>
|
|
||||||
<tool id="org.eclipse.cdt.build.core.settings.holder.808639665" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">
|
|
||||||
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1739537780" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
|
|
||||||
</tool>
|
|
||||||
</toolChain>
|
|
||||||
</folderInfo>
|
|
||||||
</configuration>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
|
||||||
</cconfiguration>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
|
||||||
<project id="PICalculator.null.699279890" name="PICalculator"/>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="scannerConfiguration">
|
|
||||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
|
||||||
<scannerConfigBuildInfo instanceId="0.243909357">
|
|
||||||
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
|
|
||||||
</scannerConfigBuildInfo>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
|
||||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
|
||||||
<configuration configurationName="Default">
|
|
||||||
<resource resourceType="PROJECT" workspacePath="/PICalculator"/>
|
|
||||||
</configuration>
|
|
||||||
</storageModule>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
|
||||||
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
|
|
||||||
<buildTargets>
|
|
||||||
<target name="TestJNI.h" path="src/main/jni" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildTarget>TestJNI.h</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="all" path="src/main/jni" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildTarget>all</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="clean" path="src/main/jni" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildTarget>clean</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
<target name="windows" path="src/main/jni" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
|
|
||||||
<buildCommand>make</buildCommand>
|
|
||||||
<buildArguments/>
|
|
||||||
<buildTarget>picalculatornative.dll</buildTarget>
|
|
||||||
<stopOnError>true</stopOnError>
|
|
||||||
<useDefaultCommand>true</useDefaultCommand>
|
|
||||||
<runAllBuilders>true</runAllBuilders>
|
|
||||||
</target>
|
|
||||||
</buildTargets>
|
|
||||||
</storageModule>
|
|
||||||
</cproject>
|
|
@ -1,13 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="CompilerConfiguration">
|
|
||||||
<annotationProcessing>
|
|
||||||
<profile name="Maven default annotation processors profile" enabled="true">
|
|
||||||
<sourceOutputDir name="target/generated-sources/annotations" />
|
|
||||||
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
|
||||||
<outputRelativeToContentRoot value="true" />
|
|
||||||
<module name="warppi-calculator" />
|
|
||||||
</profile>
|
|
||||||
</annotationProcessing>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="Encoding">
|
|
||||||
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
@ -1,14 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
|
||||||
<component name="MavenProjectsManager">
|
|
||||||
<option name="originalFiles">
|
|
||||||
<list>
|
|
||||||
<option value="$PROJECT_DIR$/pom.xml" />
|
|
||||||
</list>
|
|
||||||
</option>
|
|
||||||
</component>
|
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
@ -1,6 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="VcsDirectoryMappings">
|
|
||||||
<mapping directory="" vcs="Git" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
20
.project
20
.project
@ -1,27 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>PICalculator</name>
|
<name>WarpPI</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
||||||
<buildSpec>
|
<buildSpec>
|
||||||
<buildCommand>
|
|
||||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
|
||||||
<triggers>clean,full,incremental,</triggers>
|
|
||||||
<arguments>
|
|
||||||
</arguments>
|
|
||||||
</buildCommand>
|
|
||||||
<buildCommand>
|
|
||||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
|
||||||
<arguments>
|
|
||||||
</arguments>
|
|
||||||
</buildCommand>
|
|
||||||
<buildCommand>
|
|
||||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
|
||||||
<triggers>full,incremental,</triggers>
|
|
||||||
<arguments>
|
|
||||||
</arguments>
|
|
||||||
</buildCommand>
|
|
||||||
<buildCommand>
|
<buildCommand>
|
||||||
<name>org.eclipse.m2e.core.maven2Builder</name>
|
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||||
<arguments>
|
<arguments>
|
||||||
@ -30,6 +13,5 @@
|
|||||||
</buildSpec>
|
</buildSpec>
|
||||||
<natures>
|
<natures>
|
||||||
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
|
||||||
</natures>
|
</natures>
|
||||||
</projectDescription>
|
</projectDescription>
|
||||||
|
@ -1,9 +1,2 @@
|
|||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
encoding//src/jar-specific/java=UTF-8
|
encoding/<project>=UTF-8
|
||||||
encoding//src/main/java=UTF-8
|
|
||||||
encoding//src/main/java/it/cavallium/warppi/gui/expression/blocks/BlockParenthesis.java=UTF-8
|
|
||||||
encoding//src/main/java/it/cavallium/warppi/math/MathematicalSymbols.java=UTF-8
|
|
||||||
encoding//src/main/resources=UTF-8
|
|
||||||
encoding//src/main/rules=UTF-8
|
|
||||||
encoding//src/teavm-specific/java=UTF-8
|
|
||||||
encoding//src/test/java=UTF-8
|
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
eclipse.preferences.version=1
|
|
||||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
|
||||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
|
||||||
org.eclipse.jdt.core.compiler.compliance=1.8
|
|
||||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
|
||||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
|
||||||
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
|
||||||
org.eclipse.jdt.core.compiler.source=1.8
|
|
||||||
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
|
|
@ -1,60 +0,0 @@
|
|||||||
cleanup.add_default_serial_version_id=false
|
|
||||||
cleanup.add_generated_serial_version_id=true
|
|
||||||
cleanup.add_missing_annotations=true
|
|
||||||
cleanup.add_missing_deprecated_annotations=true
|
|
||||||
cleanup.add_missing_methods=true
|
|
||||||
cleanup.add_missing_nls_tags=false
|
|
||||||
cleanup.add_missing_override_annotations=true
|
|
||||||
cleanup.add_missing_override_annotations_interface_methods=true
|
|
||||||
cleanup.add_serial_version_id=true
|
|
||||||
cleanup.always_use_blocks=true
|
|
||||||
cleanup.always_use_parentheses_in_expressions=true
|
|
||||||
cleanup.always_use_this_for_non_static_field_access=false
|
|
||||||
cleanup.always_use_this_for_non_static_method_access=false
|
|
||||||
cleanup.convert_functional_interfaces=true
|
|
||||||
cleanup.convert_to_enhanced_for_loop=true
|
|
||||||
cleanup.correct_indentation=true
|
|
||||||
cleanup.format_source_code=true
|
|
||||||
cleanup.format_source_code_changes_only=false
|
|
||||||
cleanup.insert_inferred_type_arguments=false
|
|
||||||
cleanup.make_local_variable_final=true
|
|
||||||
cleanup.make_parameters_final=false
|
|
||||||
cleanup.make_private_fields_final=true
|
|
||||||
cleanup.make_type_abstract_if_missing_method=false
|
|
||||||
cleanup.make_variable_declarations_final=true
|
|
||||||
cleanup.never_use_blocks=false
|
|
||||||
cleanup.never_use_parentheses_in_expressions=false
|
|
||||||
cleanup.organize_imports=false
|
|
||||||
cleanup.qualify_static_field_accesses_with_declaring_class=false
|
|
||||||
cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
|
|
||||||
cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
|
|
||||||
cleanup.qualify_static_member_accesses_with_declaring_class=true
|
|
||||||
cleanup.qualify_static_method_accesses_with_declaring_class=false
|
|
||||||
cleanup.remove_private_constructors=true
|
|
||||||
cleanup.remove_redundant_type_arguments=true
|
|
||||||
cleanup.remove_trailing_whitespaces=false
|
|
||||||
cleanup.remove_trailing_whitespaces_all=true
|
|
||||||
cleanup.remove_trailing_whitespaces_ignore_empty=false
|
|
||||||
cleanup.remove_unnecessary_casts=true
|
|
||||||
cleanup.remove_unnecessary_nls_tags=true
|
|
||||||
cleanup.remove_unused_imports=true
|
|
||||||
cleanup.remove_unused_local_variables=false
|
|
||||||
cleanup.remove_unused_private_fields=true
|
|
||||||
cleanup.remove_unused_private_members=false
|
|
||||||
cleanup.remove_unused_private_methods=true
|
|
||||||
cleanup.remove_unused_private_types=true
|
|
||||||
cleanup.sort_members=false
|
|
||||||
cleanup.sort_members_all=false
|
|
||||||
cleanup.use_anonymous_class_creation=false
|
|
||||||
cleanup.use_blocks=true
|
|
||||||
cleanup.use_blocks_only_for_return_and_throw=false
|
|
||||||
cleanup.use_lambda=true
|
|
||||||
cleanup.use_parentheses_in_expressions=false
|
|
||||||
cleanup.use_this_for_non_static_field_access=true
|
|
||||||
cleanup.use_this_for_non_static_field_access_only_if_necessary=true
|
|
||||||
cleanup.use_this_for_non_static_method_access=true
|
|
||||||
cleanup.use_this_for_non_static_method_access_only_if_necessary=true
|
|
||||||
cleanup_profile=_Drake's Cleanup
|
|
||||||
cleanup_settings_version=2
|
|
||||||
eclipse.preferences.version=1
|
|
||||||
formatter_settings_version=12
|
|
@ -1,4 +1,4 @@
|
|||||||
activeProfiles=jarprofile
|
activeProfiles=
|
||||||
eclipse.preferences.version=1
|
eclipse.preferences.version=1
|
||||||
resolveWorkspaceProjects=true
|
resolveWorkspaceProjects=true
|
||||||
version=1
|
version=1
|
||||||
|
@ -1,15 +1,26 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<classpath>
|
<classpath>
|
||||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
|
<classpathentry kind="src" output="target/classes" path="src/main/java">
|
||||||
|
<attributes>
|
||||||
|
<attribute name="optional" value="true"/>
|
||||||
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
|
</attributes>
|
||||||
|
</classpathentry>
|
||||||
|
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
|
||||||
<attributes>
|
<attributes>
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
|
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
|
||||||
<attributes>
|
<attributes>
|
||||||
<attribute name="test" value="true"/>
|
|
||||||
<attribute name="optional" value="true"/>
|
<attribute name="optional" value="true"/>
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
|
<attribute name="test" value="true"/>
|
||||||
|
</attributes>
|
||||||
|
</classpathentry>
|
||||||
|
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
|
||||||
|
<attributes>
|
||||||
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
|
||||||
@ -17,28 +28,5 @@
|
|||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry excluding="veryverylongandparticularpath/abcd" kind="src" output="target/classes" path="src/main/java">
|
|
||||||
<attributes>
|
|
||||||
<attribute name="optional" value="true"/>
|
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
|
||||||
</attributes>
|
|
||||||
</classpathentry>
|
|
||||||
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/rules">
|
|
||||||
<attributes>
|
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
|
||||||
<attribute name="optional" value="true"/>
|
|
||||||
</attributes>
|
|
||||||
</classpathentry>
|
|
||||||
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
|
|
||||||
<attributes>
|
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
|
||||||
</attributes>
|
|
||||||
</classpathentry>
|
|
||||||
<classpathentry excluding="veryverylongandparticularpath/abcd" kind="src" output="target/classes" path="src/jar-specific/java">
|
|
||||||
<attributes>
|
|
||||||
<attribute name="optional" value="true"/>
|
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
|
||||||
</attributes>
|
|
||||||
</classpathentry>
|
|
||||||
<classpathentry kind="output" path="target/classes"/>
|
<classpathentry kind="output" path="target/classes"/>
|
||||||
</classpath>
|
</classpath>
|
1
core/.gitignore
vendored
Normal file
1
core/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/target/
|
23
core/.project
Normal file
23
core/.project
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<projectDescription>
|
||||||
|
<name>warppi-core</name>
|
||||||
|
<comment></comment>
|
||||||
|
<projects>
|
||||||
|
</projects>
|
||||||
|
<buildSpec>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
<buildCommand>
|
||||||
|
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||||
|
<arguments>
|
||||||
|
</arguments>
|
||||||
|
</buildCommand>
|
||||||
|
</buildSpec>
|
||||||
|
<natures>
|
||||||
|
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||||
|
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||||
|
</natures>
|
||||||
|
</projectDescription>
|
4
core/.settings/org.eclipse.core.resources.prefs
Normal file
4
core/.settings/org.eclipse.core.resources.prefs
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
eclipse.preferences.version=1
|
||||||
|
encoding//src/main/java=UTF-8
|
||||||
|
encoding//src/main/resources=UTF-8
|
||||||
|
encoding/<project>=UTF-8
|
6
core/.settings/org.eclipse.jdt.core.prefs
Normal file
6
core/.settings/org.eclipse.jdt.core.prefs
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||||
|
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||||
|
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
|
||||||
|
org.eclipse.jdt.core.compiler.release=disabled
|
||||||
|
org.eclipse.jdt.core.compiler.source=1.8
|
4
core/.settings/org.eclipse.m2e.core.prefs
Normal file
4
core/.settings/org.eclipse.m2e.core.prefs
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
activeProfiles=
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
resolveWorkspaceProjects=true
|
||||||
|
version=1
|
59
core/pom.xml
Normal file
59
core/pom.xml
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<parent>
|
||||||
|
<groupId>it.cavallium</groupId>
|
||||||
|
<artifactId>warppi</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</parent>
|
||||||
|
<artifactId>warppi-core</artifactId>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
|
||||||
|
<name>WarpPI Calculator Core</name>
|
||||||
|
<description>WarpPI Calculator core project</description>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>it.unimi.dsi</groupId>
|
||||||
|
<artifactId>fastutil</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-io</groupId>
|
||||||
|
<artifactId>commons-io</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.commons</groupId>
|
||||||
|
<artifactId>commons-lang3</artifactId>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<instructions>
|
||||||
|
<Export-Package>it.cavallium.warppi.*</Export-Package>
|
||||||
|
<Bundle-SymbolicName>warppi-core</Bundle-SymbolicName>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-source-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
0
src/main/java/it/cavallium/warppi/BMPFile.java → core/src/main/java/it/cavallium/warppi/BMPFile.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/BMPFile.java → core/src/main/java/it/cavallium/warppi/BMPFile.java
Executable file → Normal file
37
src/main/java/it/cavallium/warppi/Engine.java → core/src/main/java/it/cavallium/warppi/Engine.java
Executable file → Normal file
37
src/main/java/it/cavallium/warppi/Engine.java → core/src/main/java/it/cavallium/warppi/Engine.java
Executable file → Normal file
@ -3,8 +3,8 @@ package it.cavallium.warppi;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
import it.cavallium.warppi.boot.StartupArguments;
|
import it.cavallium.warppi.boot.StartupArguments;
|
||||||
import it.cavallium.warppi.deps.DGpio;
|
import it.cavallium.warppi.deps.Platform;
|
||||||
import it.cavallium.warppi.deps.DSystem;
|
import it.cavallium.warppi.deps.Platform.ConsoleUtils;
|
||||||
import it.cavallium.warppi.device.HardwareDevice;
|
import it.cavallium.warppi.device.HardwareDevice;
|
||||||
import it.cavallium.warppi.device.HardwareTouchDevice;
|
import it.cavallium.warppi.device.HardwareTouchDevice;
|
||||||
import it.cavallium.warppi.device.InputManager;
|
import it.cavallium.warppi.device.InputManager;
|
||||||
@ -18,17 +18,19 @@ import it.cavallium.warppi.gui.screens.Screen;
|
|||||||
|
|
||||||
public class Engine {
|
public class Engine {
|
||||||
public static final Engine INSTANCE = new Engine();
|
public static final Engine INSTANCE = new Engine();
|
||||||
|
private static Platform platform;
|
||||||
private static boolean running = false;
|
private static boolean running = false;
|
||||||
private static BehaviorSubject<LoadingStatus> loadPhase = BehaviorSubject.create();
|
private static BehaviorSubject<LoadingStatus> loadPhase = BehaviorSubject.create();
|
||||||
private BehaviorSubject<Boolean> loaded = BehaviorSubject.create(false);
|
private BehaviorSubject<Boolean> loaded = BehaviorSubject.create(false);
|
||||||
|
|
||||||
private Engine() {
|
private Engine() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Start an instance of the calculator.
|
* Start an instance of the calculator.
|
||||||
*
|
*
|
||||||
|
* @param platform
|
||||||
|
* Platform implementation
|
||||||
* @param screen
|
* @param screen
|
||||||
* Default screen to show at startup
|
* Default screen to show at startup
|
||||||
* @param disp
|
* @param disp
|
||||||
@ -40,24 +42,25 @@ public class Engine {
|
|||||||
* @throws InterruptedException
|
* @throws InterruptedException
|
||||||
* @throws IOException
|
* @throws IOException
|
||||||
*/
|
*/
|
||||||
public static void start(Screen screen, HardwareDisplay disp, HardwareTouchDevice touchdevice, HUD hud,
|
public static void start(Platform platform, Screen screen, HardwareDisplay disp, HardwareTouchDevice touchdevice, HUD hud,
|
||||||
StartupArguments args) throws InterruptedException, IOException {
|
StartupArguments args) throws InterruptedException, IOException {
|
||||||
if (running) {
|
if (running) {
|
||||||
throw new RuntimeException("Already running!");
|
throw new RuntimeException("Already running!");
|
||||||
} else {
|
} else {
|
||||||
running = true;
|
running = true;
|
||||||
INSTANCE.startInstance(screen, disp, touchdevice, hud, args);
|
INSTANCE.startInstance(platform, screen, disp, touchdevice, hud, args);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void startInstance(Screen screen, HardwareDisplay disp, HardwareTouchDevice touchdevice, HUD hud,
|
private void startInstance(final Platform platform, Screen screen, HardwareDisplay disp, HardwareTouchDevice touchdevice, HUD hud,
|
||||||
StartupArguments args) throws InterruptedException, IOException {
|
StartupArguments args) throws InterruptedException, IOException {
|
||||||
ConsoleUtils.out.println("WarpPI Calculator");
|
Engine.platform = platform;
|
||||||
|
platform.getConsoleUtils().out().println("WarpPI Calculator");
|
||||||
initializeEnvironment(args);
|
initializeEnvironment(args);
|
||||||
|
|
||||||
Thread currentThread = Thread.currentThread();
|
Thread currentThread = Thread.currentThread();
|
||||||
currentThread.setPriority(Thread.MAX_PRIORITY);
|
currentThread.setPriority(Thread.MAX_PRIORITY);
|
||||||
PlatformUtils.setThreadName(currentThread, "Main thread");
|
Engine.getPlatform().setThreadName(currentThread, "Main thread");
|
||||||
|
|
||||||
DisplayManager dm = new DisplayManager(disp, hud, screen, "WarpPI Calculator by Andrea Cavalli (@Cavallium)");
|
DisplayManager dm = new DisplayManager(disp, hud, screen, "WarpPI Calculator by Andrea Cavalli (@Cavallium)");
|
||||||
Keyboard k = new Keyboard();
|
Keyboard k = new Keyboard();
|
||||||
@ -68,11 +71,11 @@ public class Engine {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void onShutdown() {
|
private void onShutdown() {
|
||||||
ConsoleUtils.out.println(1, "Shutdown...");
|
Engine.platform.getConsoleUtils().out().println(1, "Shutdown...");
|
||||||
beforeShutdown();
|
beforeShutdown();
|
||||||
ConsoleUtils.out.println(1, "");
|
Engine.platform.getConsoleUtils().out().println(1, "");
|
||||||
ConsoleUtils.out.println(1, "Closed.");
|
Engine.platform.getConsoleUtils().out().println(1, "Closed.");
|
||||||
DSystem.exit(0);
|
Engine.getPlatform().exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initializeEnvironment(StartupArguments args) throws IOException {
|
private void initializeEnvironment(StartupArguments args) throws IOException {
|
||||||
@ -83,11 +86,11 @@ public class Engine {
|
|||||||
if (args.isVerboseLoggingEnabled() || args.isDebugEnabled()) {
|
if (args.isVerboseLoggingEnabled() || args.isDebugEnabled()) {
|
||||||
StaticVars.outputLevel = ConsoleUtils.OUTPUTLEVEL_DEBUG_VERBOSE;
|
StaticVars.outputLevel = ConsoleUtils.OUTPUTLEVEL_DEBUG_VERBOSE;
|
||||||
}
|
}
|
||||||
ConsoleUtils.out.println(ConsoleUtils.OUTPUTLEVEL_DEBUG_MIN, args);
|
Engine.platform.getConsoleUtils().out().println(ConsoleUtils.OUTPUTLEVEL_DEBUG_MIN, args);
|
||||||
checkDeviceType();
|
checkDeviceType();
|
||||||
if (Utils.isRunningOnRaspberry() && args.isRaspberryModeAllowed()) {
|
if (Utils.isRunningOnRaspberry() && args.isRaspberryModeAllowed()) {
|
||||||
DGpio.wiringPiSetupPhys();
|
Engine.getPlatform().getGpio().wiringPiSetupPhys();
|
||||||
DGpio.pinMode(12, DGpio.PWM_OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(12, Engine.getPlatform().getGpio().valuePwmOutput());
|
||||||
} else {
|
} else {
|
||||||
StaticVars.screenPos = new int[] { 0, 0 };
|
StaticVars.screenPos = new int[] { 0, 0 };
|
||||||
StaticVars.debugOn = true;
|
StaticVars.debugOn = true;
|
||||||
@ -111,6 +114,10 @@ public class Engine {
|
|||||||
return loadPhase;
|
return loadPhase;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Platform getPlatform() {
|
||||||
|
return platform;
|
||||||
|
}
|
||||||
|
|
||||||
public static class LoadingStatus {
|
public static class LoadingStatus {
|
||||||
protected LoadingStatus() {
|
protected LoadingStatus() {
|
||||||
|
|
0
src/main/java/it/cavallium/warppi/Error.java → core/src/main/java/it/cavallium/warppi/Error.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/Error.java → core/src/main/java/it/cavallium/warppi/Error.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/Errors.java → core/src/main/java/it/cavallium/warppi/Errors.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/Errors.java → core/src/main/java/it/cavallium/warppi/Errors.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/TestDrivers.java → core/src/main/java/it/cavallium/warppi/TestDrivers.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/TestDrivers.java → core/src/main/java/it/cavallium/warppi/TestDrivers.java
Executable file → Normal file
62
src/main/java/it/cavallium/warppi/Utils.java → core/src/main/java/it/cavallium/warppi/Utils.java
Executable file → Normal file
62
src/main/java/it/cavallium/warppi/Utils.java → core/src/main/java/it/cavallium/warppi/Utils.java
Executable file → Normal file
@ -1,6 +1,7 @@
|
|||||||
package it.cavallium.warppi;
|
package it.cavallium.warppi;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.lang.management.ManagementFactory;
|
import java.lang.management.ManagementFactory;
|
||||||
@ -11,19 +12,19 @@ import java.math.BigDecimal;
|
|||||||
import java.math.BigInteger;
|
import java.math.BigInteger;
|
||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.net.URISyntaxException;
|
import java.net.URISyntaxException;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.apache.commons.io.FileUtils;
|
||||||
import org.nevec.rjm.BigDecimalMath;
|
import org.nevec.rjm.BigDecimalMath;
|
||||||
import org.nevec.rjm.Rational;
|
import org.nevec.rjm.Rational;
|
||||||
|
|
||||||
import it.cavallium.warppi.deps.DGpio;
|
|
||||||
import it.cavallium.warppi.deps.StorageUtils;
|
|
||||||
import it.cavallium.warppi.deps.nio.DFiles;
|
|
||||||
import it.cavallium.warppi.deps.nio.DPath;
|
|
||||||
import it.cavallium.warppi.deps.nio.DPaths;
|
|
||||||
import it.cavallium.warppi.device.HardwareDevice;
|
import it.cavallium.warppi.device.HardwareDevice;
|
||||||
import it.cavallium.warppi.gui.graphicengine.BinaryFont;
|
import it.cavallium.warppi.gui.graphicengine.BinaryFont;
|
||||||
|
import it.cavallium.warppi.gui.graphicengine.GraphicEngine;
|
||||||
import it.cavallium.warppi.math.Function;
|
import it.cavallium.warppi.math.Function;
|
||||||
import it.cavallium.warppi.math.FunctionOperator;
|
import it.cavallium.warppi.math.FunctionOperator;
|
||||||
import it.cavallium.warppi.math.FunctionSingle;
|
import it.cavallium.warppi.math.FunctionSingle;
|
||||||
@ -154,7 +155,7 @@ public class Utils {
|
|||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlySettedUpFunctionsSumsEquationsAndSystems(ObjectArrayList<Function> fl) {
|
public static boolean areThereOnlySettedUpFunctionsSumsEquationsAndSystems(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
@ -173,8 +174,7 @@ public class Utils {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlySettedUpFunctionsSumsMultiplicationsEquationsAndSystems(
|
public static boolean areThereOnlySettedUpFunctionsSumsMultiplicationsEquationsAndSystems(List<Function> fl) {
|
||||||
ObjectArrayList<Function> fl) {
|
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Multiplication || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Multiplication || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
@ -193,7 +193,7 @@ public class Utils {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlySettedUpFunctionsEquationsAndSystems(ObjectArrayList<Function> fl) {
|
public static boolean areThereOnlySettedUpFunctionsEquationsAndSystems(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
@ -212,7 +212,7 @@ public class Utils {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlySettedUpFunctionsAndSystems(ObjectArrayList<Function> fl) {
|
public static boolean areThereOnlySettedUpFunctionsAndSystems(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Equation || fl.get(i) instanceof EquationsSystemPart || fl.get(i) instanceof Expression)) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
@ -231,7 +231,7 @@ public class Utils {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlyEmptySNFunctions(ObjectArrayList<Function> fl) {
|
public static boolean areThereOnlyEmptySNFunctions(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
if (((FunctionSingle) fl.get(i)).getParameter() == null) {
|
if (((FunctionSingle) fl.get(i)).getParameter() == null) {
|
||||||
@ -242,7 +242,7 @@ public class Utils {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOnlyEmptyNSNFunctions(ObjectArrayList<Function> fl) {
|
public static boolean areThereOnlyEmptyNSNFunctions(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (fl.get(i) instanceof FunctionOperator && !(fl.get(i) instanceof Sum) && !(fl.get(i) instanceof SumSubtraction) && !(fl.get(i) instanceof Subtraction) && !(fl.get(i) instanceof Multiplication) && !(fl.get(i) instanceof Division)) {
|
if (fl.get(i) instanceof FunctionOperator && !(fl.get(i) instanceof Sum) && !(fl.get(i) instanceof SumSubtraction) && !(fl.get(i) instanceof Subtraction) && !(fl.get(i) instanceof Multiplication) && !(fl.get(i) instanceof Division)) {
|
||||||
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
||||||
@ -253,7 +253,7 @@ public class Utils {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereEmptyMultiplications(ObjectArrayList<Function> fl) {
|
public static boolean areThereEmptyMultiplications(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (fl.get(i) instanceof Multiplication || fl.get(i) instanceof Division) {
|
if (fl.get(i) instanceof Multiplication || fl.get(i) instanceof Division) {
|
||||||
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
||||||
@ -264,7 +264,7 @@ public class Utils {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereEmptySums(ObjectArrayList<Function> fl) {
|
public static boolean areThereEmptySums(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction) {
|
if (fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Subtraction) {
|
||||||
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
if (((FunctionOperator) fl.get(i)).getParameter1() == null && ((FunctionOperator) fl.get(i)).getParameter2() == null) {
|
||||||
@ -275,7 +275,7 @@ public class Utils {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereEmptySystems(ObjectArrayList<Function> fl) {
|
public static boolean areThereEmptySystems(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (fl.get(i) instanceof EquationsSystemPart) {
|
if (fl.get(i) instanceof EquationsSystemPart) {
|
||||||
if (((EquationsSystemPart) fl.get(i)).getParameter() == null) {
|
if (((EquationsSystemPart) fl.get(i)).getParameter() == null) {
|
||||||
@ -286,7 +286,7 @@ public class Utils {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean areThereOtherSettedUpFunctions(ObjectArrayList<Function> fl) {
|
public static boolean areThereOtherSettedUpFunctions(List<Function> fl) {
|
||||||
for (int i = 0; i < fl.size(); i++) {
|
for (int i = 0; i < fl.size(); i++) {
|
||||||
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Expression || fl.get(i) instanceof FunctionSingle || fl.get(i) instanceof Multiplication || fl.get(i) instanceof Division)) {
|
if (!(fl.get(i) instanceof Number || fl.get(i) instanceof Variable || fl.get(i) instanceof Sum || fl.get(i) instanceof SumSubtraction || fl.get(i) instanceof Expression || fl.get(i) instanceof FunctionSingle || fl.get(i) instanceof Multiplication || fl.get(i) instanceof Division)) {
|
||||||
if (fl.get(i) instanceof FunctionSingle) {
|
if (fl.get(i) instanceof FunctionSingle) {
|
||||||
@ -369,7 +369,7 @@ public class Utils {
|
|||||||
return BigDecimalMath.divideRound(new BigDecimal(r.numer()).setScale(Utils.scale, Utils.scaleMode), new BigDecimal(r.denom()).setScale(Utils.scale, Utils.scaleMode));
|
return BigDecimalMath.divideRound(new BigDecimal(r.numer()).setScale(Utils.scale, Utils.scaleMode), new BigDecimal(r.denom()).setScale(Utils.scale, Utils.scaleMode));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean equalsVariables(ObjectArrayList<Variable> variables, ObjectArrayList<Variable> variables2) {
|
public static boolean equalsVariables(List<Variable> variables, List<Variable> variables2) {
|
||||||
if (variables.size() != variables2.size()) {
|
if (variables.size() != variables2.size()) {
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
@ -602,7 +602,7 @@ public class Utils {
|
|||||||
if (displayName.endsWith("MemorySize")) {
|
if (displayName.endsWith("MemorySize")) {
|
||||||
mb = true;
|
mb = true;
|
||||||
}
|
}
|
||||||
final ObjectArrayList<String> arr = new ObjectArrayList<>();
|
final List<String> arr = new ArrayList<>();
|
||||||
arr.add("getFreePhysicalMemorySize");
|
arr.add("getFreePhysicalMemorySize");
|
||||||
arr.add("getProcessCpuLoad");
|
arr.add("getProcessCpuLoad");
|
||||||
arr.add("getSystemCpuLoad");
|
arr.add("getSystemCpuLoad");
|
||||||
@ -631,17 +631,17 @@ public class Utils {
|
|||||||
|
|
||||||
public static boolean isRunningOnRaspberry() {
|
public static boolean isRunningOnRaspberry() {
|
||||||
return CacheUtils.get("isRunningOnRaspberry", 24 * 60 * 60 * 1000, () -> {
|
return CacheUtils.get("isRunningOnRaspberry", 24 * 60 * 60 * 1000, () -> {
|
||||||
if (PlatformUtils.isJavascript)
|
if (Engine.getPlatform().isJavascript())
|
||||||
return false;
|
return false;
|
||||||
try {
|
try {
|
||||||
// Check if it's a raspberry using pi4j
|
// Check if it's a raspberry using pi4j
|
||||||
return DGpio.getBoardType() != DGpio.UnknownBoardType;
|
return Engine.getPlatform().getGpio().getBoardType() != Engine.getPlatform().getGpio().valueUnknownBoardType();
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
// Check if it's a raspberry using other methods
|
// Check if it's a raspberry using other methods
|
||||||
if (PlatformUtils.osName.equals("Linux")) {
|
if (Engine.getPlatform().getOsName().equals("Linux")) {
|
||||||
try {
|
try {
|
||||||
final DPath osRelease = DPaths.get("/etc", "os-release");
|
final File osRelease = new File("/etc", "os-release");
|
||||||
return DFiles.readAllLines(osRelease).stream().map(String::toLowerCase).anyMatch(line -> line.contains("raspbian") && line.contains("name"));
|
return FileUtils.readLines(osRelease, "UTF-8").stream().map(String::toLowerCase).anyMatch(line -> line.contains("raspbian") && line.contains("name"));
|
||||||
} catch (IOException readException) {
|
} catch (IOException readException) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -654,7 +654,7 @@ public class Utils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isWindows() {
|
public static boolean isWindows() {
|
||||||
return (PlatformUtils.osName.indexOf("win") >= 0);
|
return (Engine.getPlatform().getOsName().indexOf("win") >= 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T> ObjectArrayList<T> newArrayList(T o) {
|
public static <T> ObjectArrayList<T> newArrayList(T o) {
|
||||||
@ -665,13 +665,21 @@ public class Utils {
|
|||||||
|
|
||||||
public static InputStream getResourceStreamSafe(String string) throws IOException, URISyntaxException {
|
public static InputStream getResourceStreamSafe(String string) throws IOException, URISyntaxException {
|
||||||
try {
|
try {
|
||||||
return StorageUtils.getResourceStream(string);
|
return Engine.getPlatform().getStorageUtils().getResourceStream(string);
|
||||||
} catch (final Exception ex) {
|
} catch (final Exception ex) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DPath getJarDirectory() {
|
public static File getJarDirectory() {
|
||||||
return DPaths.get("").toAbsolutePath();
|
return new File("").getAbsoluteFile();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T,U> U getOrDefault(Map<T, U> enginesList, T key, U object) {
|
||||||
|
if (enginesList.containsKey(key)) {
|
||||||
|
return enginesList.get(key);
|
||||||
|
} else {
|
||||||
|
return object;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -2,10 +2,10 @@ package it.cavallium.warppi.boot;
|
|||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
import it.cavallium.warppi.ConsoleUtils;
|
|
||||||
import it.cavallium.warppi.Engine;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.Engine.LoadingStatus;
|
import it.cavallium.warppi.Engine.LoadingStatus;
|
||||||
import it.cavallium.warppi.Error;
|
import it.cavallium.warppi.Error;
|
||||||
|
import it.cavallium.warppi.deps.Platform;
|
||||||
import it.cavallium.warppi.device.HardwareDevice;
|
import it.cavallium.warppi.device.HardwareDevice;
|
||||||
import it.cavallium.warppi.device.PIHardwareDisplay;
|
import it.cavallium.warppi.device.PIHardwareDisplay;
|
||||||
import it.cavallium.warppi.device.PIHardwareTouchDevice;
|
import it.cavallium.warppi.device.PIHardwareTouchDevice;
|
||||||
@ -13,10 +13,11 @@ import it.cavallium.warppi.gui.CalculatorHUD;
|
|||||||
import it.cavallium.warppi.gui.screens.LoadingScreen;
|
import it.cavallium.warppi.gui.screens.LoadingScreen;
|
||||||
import it.cavallium.warppi.math.rules.RulesManager;
|
import it.cavallium.warppi.math.rules.RulesManager;
|
||||||
|
|
||||||
public class WarpPI {
|
public class Boot {
|
||||||
public static void main(String[] args) throws Exception {
|
|
||||||
Engine.start(new LoadingScreen(), new PIHardwareDisplay(), new PIHardwareTouchDevice(false, false, false), new CalculatorHUD(), parseStartupArguments(args));
|
public static void boot(Platform platform, String[] args) throws Exception {
|
||||||
Engine.INSTANCE.getLoadPhase().subscribe(WarpPI::loadCalculator);
|
Engine.start(platform, new LoadingScreen(), new PIHardwareDisplay(), new PIHardwareTouchDevice(false, false, false), new CalculatorHUD(), parseStartupArguments(args));
|
||||||
|
Engine.INSTANCE.getLoadPhase().subscribe(Boot::loadCalculator);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void loadCalculator(LoadingStatus loading) {
|
private static void loadCalculator(LoadingStatus loading) {
|
||||||
@ -86,7 +87,7 @@ public class WarpPI {
|
|||||||
args.setUncached(true);
|
args.setUncached(true);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
ConsoleUtils.out.println("Unrecognized argument " + arg);
|
Engine.getPlatform().getConsoleUtils().out().println("Unrecognized argument " + arg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
package it.cavallium.warppi.deps.jogamp;
|
package it.cavallium.warppi.deps;
|
||||||
|
|
||||||
public class DJogamp {
|
public interface DJogamp {
|
||||||
|
|
||||||
//
|
//
|
||||||
// Unicode: Non printable controls: [0x00 - 0x1F]
|
// Unicode: Non printable controls: [0x00 - 0x1F]
|
159
core/src/main/java/it/cavallium/warppi/deps/Platform.java
Normal file
159
core/src/main/java/it/cavallium/warppi/deps/Platform.java
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
package it.cavallium.warppi.deps;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.PrintWriter;
|
||||||
|
import java.net.URISyntaxException;
|
||||||
|
import java.net.URL;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import it.cavallium.warppi.Error;
|
||||||
|
import it.cavallium.warppi.gui.graphicengine.GraphicEngine;
|
||||||
|
import it.cavallium.warppi.gui.graphicengine.Skin;
|
||||||
|
|
||||||
|
public interface Platform {
|
||||||
|
|
||||||
|
public ConsoleUtils getConsoleUtils();
|
||||||
|
public Gpio getGpio();
|
||||||
|
public StorageUtils getStorageUtils();
|
||||||
|
public PngUtils getPngUtils();
|
||||||
|
|
||||||
|
public void setThreadName(Thread t, String name);
|
||||||
|
public void setThreadDaemon(Thread t);
|
||||||
|
public void setThreadDaemon(Thread t, boolean value);
|
||||||
|
|
||||||
|
public void exit(int value);
|
||||||
|
public void gc();
|
||||||
|
|
||||||
|
public boolean isJavascript();
|
||||||
|
|
||||||
|
public String getOsName();
|
||||||
|
|
||||||
|
public void alphaChanged(boolean val);
|
||||||
|
public void shiftChanged(boolean val);
|
||||||
|
|
||||||
|
public Semaphore newSemaphore();
|
||||||
|
public Semaphore newSemaphore(int i);
|
||||||
|
|
||||||
|
public URLClassLoader newURLClassLoader(URL[] urls);
|
||||||
|
|
||||||
|
public Map<String, GraphicEngine> getEnginesList();
|
||||||
|
public GraphicEngine getEngine(String string) throws NullPointerException;
|
||||||
|
|
||||||
|
public void throwNewExceptionInInitializerError(String text);
|
||||||
|
public String[] stacktraceToString(Error e);
|
||||||
|
|
||||||
|
public void loadPlatformRules();
|
||||||
|
public void zip(String targetPath, String destinationFilePath, String password);
|
||||||
|
public void unzip(String targetZipFilePath, String destinationFolderPath, String password);
|
||||||
|
|
||||||
|
public boolean compile(String[] command, PrintWriter printWriter, PrintWriter errors);
|
||||||
|
|
||||||
|
public interface Gpio {
|
||||||
|
public int valueOutput();
|
||||||
|
public int valuePwmOutput();
|
||||||
|
public int valueInput();
|
||||||
|
public int valueHigh();
|
||||||
|
public int valueLow();
|
||||||
|
public Object valueUnknownBoardType();
|
||||||
|
|
||||||
|
public void wiringPiSetupPhys();
|
||||||
|
|
||||||
|
public void pinMode(int i, int type);
|
||||||
|
|
||||||
|
public void digitalWrite(int pin, int val);
|
||||||
|
|
||||||
|
public void digitalWrite(int pin, boolean val);
|
||||||
|
|
||||||
|
public void pwmWrite(int pin, int val);
|
||||||
|
|
||||||
|
public void delayMicroseconds(int t);
|
||||||
|
|
||||||
|
public int digitalRead(int pin);
|
||||||
|
|
||||||
|
public Object getBoardType();
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface ConsoleUtils {
|
||||||
|
public static final int OUTPUTLEVEL_NODEBUG = 0;
|
||||||
|
public static final int OUTPUTLEVEL_DEBUG_MIN = 1;
|
||||||
|
public static final int OUTPUTLEVEL_DEBUG_VERBOSE = 4;
|
||||||
|
|
||||||
|
public AdvancedOutputStream out();
|
||||||
|
|
||||||
|
public interface AdvancedOutputStream {
|
||||||
|
public void println(Object str);
|
||||||
|
|
||||||
|
public void println(int level);
|
||||||
|
|
||||||
|
public void println(int level, Object str);
|
||||||
|
|
||||||
|
public void print(int level, String str);
|
||||||
|
|
||||||
|
public void println(int level, String prefix, String str);
|
||||||
|
|
||||||
|
public void println(int level, String... parts);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface StorageUtils {
|
||||||
|
int OpenOptionWrite = 0;
|
||||||
|
int OpenOptionCreate = 1;
|
||||||
|
|
||||||
|
public boolean exists(File f);
|
||||||
|
|
||||||
|
public File get(String path);
|
||||||
|
|
||||||
|
public File get(String... path);
|
||||||
|
|
||||||
|
@Deprecated()
|
||||||
|
public File getResource(String string) throws IOException, URISyntaxException;
|
||||||
|
|
||||||
|
public InputStream getResourceStream(String string) throws IOException, URISyntaxException;
|
||||||
|
|
||||||
|
public List<String> readAllLines(File file) throws IOException;
|
||||||
|
|
||||||
|
public String read(InputStream input) throws IOException;
|
||||||
|
|
||||||
|
public List<File> walk(File dir) throws IOException;
|
||||||
|
|
||||||
|
public File relativize(File rulesPath, File f);
|
||||||
|
|
||||||
|
public File resolve(File file, String string);
|
||||||
|
|
||||||
|
public File getParent(File f);
|
||||||
|
|
||||||
|
public void createDirectories(File dir) throws IOException;
|
||||||
|
|
||||||
|
public void write(File f, byte[] bytes, int... options) throws IOException;
|
||||||
|
|
||||||
|
public List<String> readAllLines(InputStream input) throws IOException;
|
||||||
|
|
||||||
|
public String getBasePath();
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface Semaphore {
|
||||||
|
void release();
|
||||||
|
void acquire() throws InterruptedException;
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface URLClassLoader {
|
||||||
|
public Class<?> loadClass(String name) throws ClassNotFoundException;
|
||||||
|
void close() throws IOException;
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface PngUtils {
|
||||||
|
|
||||||
|
public PngReader load(InputStream resourceStream);
|
||||||
|
|
||||||
|
public interface PngReader {
|
||||||
|
|
||||||
|
int[] getImageMatrix();
|
||||||
|
|
||||||
|
int[] getSize();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
11
src/main/java/it/cavallium/warppi/device/CacheFile.java → core/src/main/java/it/cavallium/warppi/device/CacheFile.java
Executable file → Normal file
11
src/main/java/it/cavallium/warppi/device/CacheFile.java → core/src/main/java/it/cavallium/warppi/device/CacheFile.java
Executable file → Normal file
@ -1,5 +1,6 @@
|
|||||||
package it.cavallium.warppi.device;
|
package it.cavallium.warppi.device;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -8,8 +9,6 @@ import java.io.ObjectOutputStream;
|
|||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
import it.cavallium.warppi.StaticVars;
|
import it.cavallium.warppi.StaticVars;
|
||||||
import it.cavallium.warppi.deps.nio.DFiles;
|
|
||||||
import it.cavallium.warppi.deps.nio.DPaths;
|
|
||||||
|
|
||||||
public class CacheFile {
|
public class CacheFile {
|
||||||
private String path;
|
private String path;
|
||||||
@ -21,9 +20,9 @@ public class CacheFile {
|
|||||||
public CacheFile() {
|
public CacheFile() {
|
||||||
do {
|
do {
|
||||||
path = UUID.randomUUID().toString() + ".ser";
|
path = UUID.randomUUID().toString() + ".ser";
|
||||||
} while (DFiles.exists(DPaths.get(path)));
|
} while (new File(path).exists());
|
||||||
try {
|
try {
|
||||||
DFiles.createTempFile(StaticVars.calculatorNameLOWER, "");
|
File.createTempFile(StaticVars.calculatorNameLOWER, "");
|
||||||
} catch (final IOException e) {
|
} catch (final IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
@ -80,8 +79,8 @@ public class CacheFile {
|
|||||||
public void dispose() {
|
public void dispose() {
|
||||||
closeStreams();
|
closeStreams();
|
||||||
try {
|
try {
|
||||||
DFiles.deleteIfExists(DPaths.get(path));
|
new File(path).delete();
|
||||||
} catch (final IOException e) {
|
} catch (final Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
package it.cavallium.warppi.device;
|
package it.cavallium.warppi.device;
|
||||||
|
|
||||||
import it.cavallium.warppi.PlatformUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.gui.DisplayManager;
|
import it.cavallium.warppi.gui.DisplayManager;
|
||||||
|
|
||||||
public class HardwareDevice {
|
public class HardwareDevice {
|
||||||
@ -26,8 +26,8 @@ public class HardwareDevice {
|
|||||||
displayManager.initialize();
|
displayManager.initialize();
|
||||||
inputManager.getKeyboard().startKeyboard();
|
inputManager.getKeyboard().startKeyboard();
|
||||||
Thread t = new Thread(r);
|
Thread t = new Thread(r);
|
||||||
PlatformUtils.setDaemon(t, false);
|
Engine.getPlatform().setThreadDaemon(t, false);
|
||||||
PlatformUtils.setThreadName(t, "Main thread (after setup)");
|
Engine.getPlatform().setThreadName(t, "Main thread (after setup)");
|
||||||
t.start();
|
t.start();
|
||||||
}
|
}
|
||||||
|
|
65
src/main/java/it/cavallium/warppi/device/Keyboard.java → core/src/main/java/it/cavallium/warppi/device/Keyboard.java
Executable file → Normal file
65
src/main/java/it/cavallium/warppi/device/Keyboard.java → core/src/main/java/it/cavallium/warppi/device/Keyboard.java
Executable file → Normal file
@ -2,11 +2,10 @@ package it.cavallium.warppi.device;
|
|||||||
|
|
||||||
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyEvent;
|
||||||
|
|
||||||
import it.cavallium.warppi.ConsoleUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.PlatformUtils;
|
|
||||||
import it.cavallium.warppi.StaticVars;
|
import it.cavallium.warppi.StaticVars;
|
||||||
import it.cavallium.warppi.deps.DGpio;
|
import it.cavallium.warppi.deps.DJogamp;
|
||||||
import it.cavallium.warppi.deps.jogamp.DJogamp;
|
import it.cavallium.warppi.deps.Platform.ConsoleUtils;
|
||||||
import it.cavallium.warppi.device.chip.ParallelToSerial;
|
import it.cavallium.warppi.device.chip.ParallelToSerial;
|
||||||
import it.cavallium.warppi.device.chip.SerialToParallel;
|
import it.cavallium.warppi.device.chip.SerialToParallel;
|
||||||
import it.cavallium.warppi.event.Key;
|
import it.cavallium.warppi.event.Key;
|
||||||
@ -58,19 +57,19 @@ public class Keyboard {
|
|||||||
}
|
}
|
||||||
} catch (final InterruptedException e) {}
|
} catch (final InterruptedException e) {}
|
||||||
} else {
|
} else {
|
||||||
DGpio.pinMode(CLK_INH_pin, DGpio.OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(CLK_INH_pin, Engine.getPlatform().getGpio().valueOutput());
|
||||||
DGpio.pinMode(RCK_pin, DGpio.OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(RCK_pin, Engine.getPlatform().getGpio().valueOutput());
|
||||||
DGpio.pinMode(SER_pin, DGpio.OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(SER_pin, Engine.getPlatform().getGpio().valueOutput());
|
||||||
DGpio.pinMode(SH_LD_pin, DGpio.OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(SH_LD_pin, Engine.getPlatform().getGpio().valueOutput());
|
||||||
DGpio.pinMode(SCK_and_CLK_pin, DGpio.OUTPUT);
|
Engine.getPlatform().getGpio().pinMode(SCK_and_CLK_pin, Engine.getPlatform().getGpio().valueOutput());
|
||||||
DGpio.pinMode(QH_pin, DGpio.INPUT);
|
Engine.getPlatform().getGpio().pinMode(QH_pin, Engine.getPlatform().getGpio().valueInput());
|
||||||
|
|
||||||
DGpio.digitalWrite(CLK_INH_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(CLK_INH_pin, false);
|
||||||
DGpio.digitalWrite(RCK_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(RCK_pin, false);
|
||||||
DGpio.digitalWrite(SER_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(SER_pin, false);
|
||||||
DGpio.digitalWrite(SH_LD_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(SH_LD_pin, false);
|
||||||
DGpio.digitalWrite(SCK_and_CLK_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(SCK_and_CLK_pin, false);
|
||||||
DGpio.digitalWrite(QH_pin, false);
|
Engine.getPlatform().getGpio().digitalWrite(QH_pin, false);
|
||||||
final SerialToParallel chip1 = new SerialToParallel(RCK_pin, SCK_and_CLK_pin /*SCK*/, SER_pin);
|
final SerialToParallel chip1 = new SerialToParallel(RCK_pin, SCK_and_CLK_pin /*SCK*/, SER_pin);
|
||||||
final ParallelToSerial chip2 = new ParallelToSerial(SH_LD_pin, CLK_INH_pin, QH_pin, SCK_and_CLK_pin/*CLK*/);
|
final ParallelToSerial chip2 = new ParallelToSerial(SH_LD_pin, CLK_INH_pin, QH_pin, SCK_and_CLK_pin/*CLK*/);
|
||||||
|
|
||||||
@ -101,9 +100,9 @@ public class Keyboard {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
PlatformUtils.setThreadName(kt, "Keyboard thread");
|
Engine.getPlatform().setThreadName(kt, "Keyboard thread");
|
||||||
kt.setPriority(Thread.NORM_PRIORITY + 1);
|
kt.setPriority(Thread.NORM_PRIORITY + 1);
|
||||||
PlatformUtils.setDaemon(kt);
|
Engine.getPlatform().setThreadDaemon(kt);
|
||||||
kt.start();
|
kt.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -761,12 +760,12 @@ public class Keyboard {
|
|||||||
|
|
||||||
public static void stopKeyboard() {
|
public static void stopKeyboard() {
|
||||||
if (StaticVars.debugOn == false) {
|
if (StaticVars.debugOn == false) {
|
||||||
DGpio.digitalWrite(33, false);
|
Engine.getPlatform().getGpio().digitalWrite(33, false);
|
||||||
DGpio.digitalWrite(35, false);
|
Engine.getPlatform().getGpio().digitalWrite(35, false);
|
||||||
DGpio.digitalWrite(36, false);
|
Engine.getPlatform().getGpio().digitalWrite(36, false);
|
||||||
DGpio.digitalWrite(37, false);
|
Engine.getPlatform().getGpio().digitalWrite(37, false);
|
||||||
DGpio.digitalWrite(38, false);
|
Engine.getPlatform().getGpio().digitalWrite(38, false);
|
||||||
DGpio.digitalWrite(40, false);
|
Engine.getPlatform().getGpio().digitalWrite(40, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -809,7 +808,7 @@ public class Keyboard {
|
|||||||
case ZOOM_MODE:
|
case ZOOM_MODE:
|
||||||
float newZoom = (StaticVars.windowZoom.getLastValue() % 3) + 1;
|
float newZoom = (StaticVars.windowZoom.getLastValue() % 3) + 1;
|
||||||
StaticVars.windowZoom.onNext(newZoom);
|
StaticVars.windowZoom.onNext(newZoom);
|
||||||
ConsoleUtils.out.println(ConsoleUtils.OUTPUTLEVEL_DEBUG_MIN, "Keyboard", "Zoom: " + newZoom);
|
Engine.getPlatform().getConsoleUtils().out().println(ConsoleUtils.OUTPUTLEVEL_DEBUG_MIN, "Keyboard", "Zoom: " + newZoom);
|
||||||
// StaticVars.windowZoom = ((StaticVars.windowZoom - 0.5f) % 2f) + 1f;
|
// StaticVars.windowZoom = ((StaticVars.windowZoom - 0.5f) % 2f) + 1f;
|
||||||
refresh = true;
|
refresh = true;
|
||||||
case HISTORY_BACK:
|
case HISTORY_BACK:
|
||||||
@ -827,22 +826,22 @@ public class Keyboard {
|
|||||||
switch (k) {
|
switch (k) {
|
||||||
case SHIFT:
|
case SHIFT:
|
||||||
if (Keyboard.alpha)
|
if (Keyboard.alpha)
|
||||||
PlatformUtils.alphaChanged(Keyboard.alpha = false);
|
Engine.getPlatform().alphaChanged(Keyboard.alpha = false);
|
||||||
PlatformUtils.shiftChanged(Keyboard.shift = !Keyboard.shift);
|
Engine.getPlatform().shiftChanged(Keyboard.shift = !Keyboard.shift);
|
||||||
refresh = true;
|
refresh = true;
|
||||||
break;
|
break;
|
||||||
case ALPHA:
|
case ALPHA:
|
||||||
if (Keyboard.shift)
|
if (Keyboard.shift)
|
||||||
PlatformUtils.shiftChanged(Keyboard.shift = false);
|
Engine.getPlatform().shiftChanged(Keyboard.shift = false);
|
||||||
PlatformUtils.alphaChanged(Keyboard.alpha = !Keyboard.alpha);
|
Engine.getPlatform().alphaChanged(Keyboard.alpha = !Keyboard.alpha);
|
||||||
refresh = true;
|
refresh = true;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (k != Key.NONE) {
|
if (k != Key.NONE) {
|
||||||
if (Keyboard.shift)
|
if (Keyboard.shift)
|
||||||
PlatformUtils.shiftChanged(Keyboard.shift = false);
|
Engine.getPlatform().shiftChanged(Keyboard.shift = false);
|
||||||
if (Keyboard.alpha)
|
if (Keyboard.alpha)
|
||||||
PlatformUtils.alphaChanged(Keyboard.alpha = false);
|
Engine.getPlatform().alphaChanged(Keyboard.alpha = false);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -850,7 +849,7 @@ public class Keyboard {
|
|||||||
refreshRequest = true;
|
refreshRequest = true;
|
||||||
}
|
}
|
||||||
} else if (!done) {
|
} else if (!done) {
|
||||||
ConsoleUtils.out.println(1, "Key " + k.toString() + " ignored.");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Key " + k.toString() + " ignored.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -876,7 +875,7 @@ public class Keyboard {
|
|||||||
refreshRequest = true;
|
refreshRequest = true;
|
||||||
}
|
}
|
||||||
} else if (!done) {
|
} else if (!done) {
|
||||||
ConsoleUtils.out.println(1, "Key " + k.toString() + " ignored.");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Key " + k.toString() + " ignored.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,8 +1,7 @@
|
|||||||
package it.cavallium.warppi.device;
|
package it.cavallium.warppi.device;
|
||||||
|
|
||||||
import it.cavallium.warppi.ConsoleUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.StaticVars;
|
import it.cavallium.warppi.StaticVars;
|
||||||
import it.cavallium.warppi.deps.DGpio;
|
|
||||||
import it.cavallium.warppi.gui.HardwareDisplay;
|
import it.cavallium.warppi.gui.HardwareDisplay;
|
||||||
|
|
||||||
public class PIHardwareDisplay implements HardwareDisplay {
|
public class PIHardwareDisplay implements HardwareDisplay {
|
||||||
@ -16,10 +15,10 @@ public class PIHardwareDisplay implements HardwareDisplay {
|
|||||||
@Override
|
@Override
|
||||||
public void setBrightness(double value) {
|
public void setBrightness(double value) {
|
||||||
if (StaticVars.debugOn == false) {
|
if (StaticVars.debugOn == false) {
|
||||||
DGpio.pwmWrite(12, (int) Math.ceil(value * 1024f));
|
Engine.getPlatform().getGpio().pwmWrite(12, (int) Math.ceil(value * 1024f));
|
||||||
// SoftPwm.softPwmWrite(12, (int)(Math.ceil(brightness*10)));
|
// SoftPwm.softPwmWrite(12, (int)(Math.ceil(brightness*10)));
|
||||||
} else {
|
} else {
|
||||||
ConsoleUtils.out.println(1, "Brightness: " + value);
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Brightness: " + value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
|||||||
|
package it.cavallium.warppi.device.chip;
|
||||||
|
|
||||||
|
import it.cavallium.warppi.Engine;
|
||||||
|
|
||||||
|
public class ParallelToSerial {
|
||||||
|
|
||||||
|
private final int SH_LD;
|
||||||
|
private final int CLK_INH;
|
||||||
|
private final int QH;
|
||||||
|
private final int CLK;
|
||||||
|
|
||||||
|
public ParallelToSerial(int SH_LD_pin, int CLK_INH_pin, int QH_pin, int CLK_pin) {
|
||||||
|
SH_LD = SH_LD_pin;
|
||||||
|
CLK_INH = CLK_INH_pin;
|
||||||
|
QH = QH_pin;
|
||||||
|
CLK = CLK_pin;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean[] read() {
|
||||||
|
final boolean[] data = new boolean[8];
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(CLK_INH, Engine.getPlatform().getGpio().valueHigh());
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(SH_LD, Engine.getPlatform().getGpio().valueLow());
|
||||||
|
Engine.getPlatform().getGpio().delayMicroseconds(1);
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(SH_LD, Engine.getPlatform().getGpio().valueHigh());
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(CLK_INH, Engine.getPlatform().getGpio().valueLow());
|
||||||
|
|
||||||
|
for (int i = 7; i >= 0; i--) {
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(CLK, Engine.getPlatform().getGpio().valueHigh());
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(CLK, Engine.getPlatform().getGpio().valueLow());
|
||||||
|
data[i] = Engine.getPlatform().getGpio().digitalRead(QH) == Engine.getPlatform().getGpio().valueHigh() ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,31 @@
|
|||||||
|
package it.cavallium.warppi.device.chip;
|
||||||
|
|
||||||
|
import it.cavallium.warppi.Engine;
|
||||||
|
|
||||||
|
public class SerialToParallel {
|
||||||
|
private final int RCK; //Storage register clock pin (latch pin)
|
||||||
|
private final int SCK; //Shift register clock pin
|
||||||
|
private final int SER; //Serial data input
|
||||||
|
|
||||||
|
public SerialToParallel(int RCK_pin, int SCK_pin, int SER_pin) {
|
||||||
|
RCK = RCK_pin;
|
||||||
|
SCK = SCK_pin;
|
||||||
|
SER = SER_pin;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void write(boolean[] data) {
|
||||||
|
if (data.length != 8) {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(RCK, Engine.getPlatform().getGpio().valueLow());
|
||||||
|
|
||||||
|
for (int i = 7; i >= 0; i--) {
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(SCK, Engine.getPlatform().getGpio().valueLow());
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(SER, data[i]);
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(SCK, Engine.getPlatform().getGpio().valueHigh());
|
||||||
|
}
|
||||||
|
|
||||||
|
Engine.getPlatform().getGpio().digitalWrite(RCK, Engine.getPlatform().getGpio().valueHigh());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -12,8 +12,8 @@ import java.util.logging.Logger;
|
|||||||
import javax.imageio.ImageIO;
|
import javax.imageio.ImageIO;
|
||||||
|
|
||||||
import it.cavallium.warppi.ClassUtils;
|
import it.cavallium.warppi.ClassUtils;
|
||||||
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.Utils;
|
import it.cavallium.warppi.Utils;
|
||||||
import it.cavallium.warppi.deps.DSystem;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@ -36,7 +36,7 @@ public class RAWFont {
|
|||||||
loadFont("/font_" + name + ".rft");
|
loadFont("/font_" + name + ".rft");
|
||||||
} catch (final IOException e) {
|
} catch (final IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
DSystem.exit(1);
|
Engine.getPlatform().exit(1);
|
||||||
}
|
}
|
||||||
chars32 = new int[(maxBound - minBound) * charIntCount];
|
chars32 = new int[(maxBound - minBound) * charIntCount];
|
||||||
for (int charIndex = 0; charIndex < maxBound - minBound; charIndex++) {
|
for (int charIndex = 0; charIndex < maxBound - minBound; charIndex++) {
|
||||||
@ -114,7 +114,7 @@ public class RAWFont {
|
|||||||
} catch (final Exception ex) {
|
} catch (final Exception ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
System.out.println(string);
|
System.out.println(string);
|
||||||
DSystem.exit(-1);
|
Engine.getPlatform().exit(-1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
@ -3,7 +3,7 @@ package it.cavallium.warppi.flow;
|
|||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import it.cavallium.warppi.PlatformUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
|
|
||||||
public class IntervalsManager {
|
public class IntervalsManager {
|
||||||
private static List<ObservableInterval> intervals = new LinkedList<>();
|
private static List<ObservableInterval> intervals = new LinkedList<>();
|
||||||
@ -41,8 +41,8 @@ public class IntervalsManager {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
PlatformUtils.setDaemon(t);
|
Engine.getPlatform().setThreadDaemon(t);
|
||||||
PlatformUtils.setThreadName(t, "Intervals Manager");
|
Engine.getPlatform().setThreadName(t, "Intervals Manager");
|
||||||
t.start();
|
t.start();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
package it.cavallium.warppi.flow;
|
package it.cavallium.warppi.flow;
|
||||||
|
|
||||||
import it.cavallium.warppi.PlatformUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
|
|
||||||
public class ObservableInterval extends Observable<Long> {
|
public class ObservableInterval extends Observable<Long> {
|
||||||
private final long interval;
|
private final long interval;
|
||||||
@ -50,7 +50,7 @@ public class ObservableInterval extends Observable<Long> {
|
|||||||
} catch (InterruptedException e) {}
|
} catch (InterruptedException e) {}
|
||||||
timeThread = null;
|
timeThread = null;
|
||||||
});
|
});
|
||||||
PlatformUtils.setThreadName(timeThread, "ObservableTimer");
|
Engine.getPlatform().setThreadName(timeThread, "ObservableTimer");
|
||||||
timeThread.start();
|
timeThread.start();
|
||||||
running = true;
|
running = true;
|
||||||
}
|
}
|
@ -1,6 +1,6 @@
|
|||||||
package it.cavallium.warppi.gui;
|
package it.cavallium.warppi.gui;
|
||||||
|
|
||||||
import it.cavallium.warppi.ConsoleUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.StaticVars;
|
import it.cavallium.warppi.StaticVars;
|
||||||
import it.cavallium.warppi.Utils;
|
import it.cavallium.warppi.Utils;
|
||||||
import it.cavallium.warppi.device.HardwareDevice;
|
import it.cavallium.warppi.device.HardwareDevice;
|
||||||
@ -84,7 +84,7 @@ public class CalculatorHUD extends HUD {
|
|||||||
if (brightness <= 10) {
|
if (brightness <= 10) {
|
||||||
renderer.glFillRect(StaticVars.screenSize[0] - (padding + 16), 2, 16, 16, 16 * brightness, 16 * 1, 16, 16);
|
renderer.glFillRect(StaticVars.screenSize[0] - (padding + 16), 2, 16, 16, 16 * brightness, 16 * 1, 16, 16);
|
||||||
} else {
|
} else {
|
||||||
ConsoleUtils.out.println(1, "Brightness error");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Brightness error");
|
||||||
}
|
}
|
||||||
|
|
||||||
padding += 18 + 6;
|
padding += 18 + 6;
|
42
src/main/java/it/cavallium/warppi/gui/DisplayManager.java → core/src/main/java/it/cavallium/warppi/gui/DisplayManager.java
Executable file → Normal file
42
src/main/java/it/cavallium/warppi/gui/DisplayManager.java → core/src/main/java/it/cavallium/warppi/gui/DisplayManager.java
Executable file → Normal file
@ -6,12 +6,11 @@ import java.util.List;
|
|||||||
|
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
import org.apache.commons.lang3.tuple.Pair;
|
||||||
|
|
||||||
import it.cavallium.warppi.ConsoleUtils;
|
import it.cavallium.warppi.Engine;
|
||||||
import it.cavallium.warppi.StaticVars;
|
import it.cavallium.warppi.StaticVars;
|
||||||
import it.cavallium.warppi.Utils;
|
import it.cavallium.warppi.Utils;
|
||||||
import it.cavallium.warppi.deps.DEngine;
|
import it.cavallium.warppi.deps.Platform.ConsoleUtils;
|
||||||
import it.cavallium.warppi.deps.DSemaphore;
|
import it.cavallium.warppi.deps.Platform.Semaphore;
|
||||||
import it.cavallium.warppi.deps.DSystem;
|
|
||||||
import it.cavallium.warppi.device.Keyboard;
|
import it.cavallium.warppi.device.Keyboard;
|
||||||
import it.cavallium.warppi.flow.Observable;
|
import it.cavallium.warppi.flow.Observable;
|
||||||
import it.cavallium.warppi.gui.graphicengine.BinaryFont;
|
import it.cavallium.warppi.gui.graphicengine.BinaryFont;
|
||||||
@ -44,7 +43,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
private final HUD hud;
|
private final HUD hud;
|
||||||
private final String initialTitle;
|
private final String initialTitle;
|
||||||
private Screen initialScreen;
|
private Screen initialScreen;
|
||||||
public DSemaphore screenChange = new DSemaphore(0);
|
public Semaphore screenChange;
|
||||||
public String displayDebugString;
|
public String displayDebugString;
|
||||||
public ObjectArrayList<GUIErrorMessage> errorMessages;
|
public ObjectArrayList<GUIErrorMessage> errorMessages;
|
||||||
/**
|
/**
|
||||||
@ -53,6 +52,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
public boolean forceRefresh;
|
public boolean forceRefresh;
|
||||||
|
|
||||||
public DisplayManager(HardwareDisplay monitor, HUD hud, Screen screen, String title) {
|
public DisplayManager(HardwareDisplay monitor, HUD hud, Screen screen, String title) {
|
||||||
|
screenChange = Engine.getPlatform().newSemaphore();
|
||||||
engine = chooseGraphicEngine();
|
engine = chooseGraphicEngine();
|
||||||
supportsPauses = engine.doesRefreshPauses();
|
supportsPauses = engine.doesRefreshPauses();
|
||||||
|
|
||||||
@ -77,7 +77,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
}
|
}
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
DSystem.exit(0);
|
Engine.getPlatform().exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -123,45 +123,45 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
private GraphicEngine chooseGraphicEngine() {
|
private GraphicEngine chooseGraphicEngine() {
|
||||||
GraphicEngine d;
|
GraphicEngine d;
|
||||||
if (!StaticVars.debugOn) {
|
if (!StaticVars.debugOn) {
|
||||||
d = DEngine.newFBEngine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "framebuffer engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
ConsoleUtils.out.println(1, "Using FB Graphic Engine");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Using FB Graphic Engine");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
d = DEngine.newGPUEngine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "GPU engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
ConsoleUtils.out.println(1, "Using GPU Graphic Engine");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Using GPU Graphic Engine");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = DEngine.newCPUEngine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "CPU engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
ConsoleUtils.out.println(1, "Using CPU Graphic Engine");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Using CPU Graphic Engine");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = DEngine.newHeadless24bitEngine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "headless 24 bit engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
System.err.println("Using Headless 24 bit Engine! This is a problem! No other graphic engines are available.");
|
System.err.println("Using Headless 24 bit Engine! This is a problem! No other graphic engines are available.");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = DEngine.newHeadless256Engine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "headless 256 colors engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
System.err.println("Using Headless 256 Engine! This is a problem! No other graphic engines are available.");
|
System.err.println("Using Headless 256 Engine! This is a problem! No other graphic engines are available.");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = DEngine.newHeadless8Engine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "headless 8 colors engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
System.err.println("Using Headless basic Engine! This is a problem! No other graphic engines are available.");
|
System.err.println("Using Headless basic Engine! This is a problem! No other graphic engines are available.");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = DEngine.newHtmlEngine();
|
d = Utils.getOrDefault(Engine.getPlatform().getEnginesList(), "HTML5 engine", null);
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
ConsoleUtils.out.println(ConsoleUtils.OUTPUTLEVEL_NODEBUG, "Using Html Graphic Engine");
|
Engine.getPlatform().getConsoleUtils().out().println(ConsoleUtils.OUTPUTLEVEL_NODEBUG, "Using Html Graphic Engine");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
d = new NoGuiEngine();
|
d = new NoGuiEngine();
|
||||||
if (d != null && d.isSupported()) {
|
if (d != null && d.isSupported()) {
|
||||||
ConsoleUtils.out.println(1, "Using NoGui Graphic Engine");
|
Engine.getPlatform().getConsoleUtils().out().println(1, "Using NoGui Graphic Engine");
|
||||||
return d;
|
return d;
|
||||||
}
|
}
|
||||||
throw new UnsupportedOperationException("No graphic engines available.");
|
throw new UnsupportedOperationException("No graphic engines available.");
|
||||||
@ -193,7 +193,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
}
|
}
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
DSystem.exit(0);
|
Engine.getPlatform().exit(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -218,7 +218,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
}
|
}
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
DSystem.exit(0);
|
Engine.getPlatform().exit(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -385,7 +385,7 @@ public final class DisplayManager implements RenderingLoop {
|
|||||||
screen.initialize();
|
screen.initialize();
|
||||||
} catch (final Exception e) {
|
} catch (final Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
DSystem.exit(0);
|
Engine.getPlatform().exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
Observable<Long> workTimer = Observable.interval(tickDuration);
|
Observable<Long> workTimer = Observable.interval(tickDuration);
|
0
src/main/java/it/cavallium/warppi/gui/GUIErrorMessage.java → core/src/main/java/it/cavallium/warppi/gui/GUIErrorMessage.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/GUIErrorMessage.java → core/src/main/java/it/cavallium/warppi/gui/GUIErrorMessage.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/GraphicUtils.java → core/src/main/java/it/cavallium/warppi/gui/GraphicUtils.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/GraphicUtils.java → core/src/main/java/it/cavallium/warppi/gui/GraphicUtils.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/GraphicalElement.java → core/src/main/java/it/cavallium/warppi/gui/GraphicalElement.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/GraphicalElement.java → core/src/main/java/it/cavallium/warppi/gui/GraphicalElement.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/expression/Caret.java → core/src/main/java/it/cavallium/warppi/gui/expression/Caret.java
Executable file → Normal file
0
src/main/java/it/cavallium/warppi/gui/expression/Caret.java → core/src/main/java/it/cavallium/warppi/gui/expression/Caret.java
Executable file → Normal file
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user