Integration: Difference between revisions

From SMath Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[SMath Studio Enterprise]], when properly licensed, supports integration with other applications via a [[Calculation Service]]. [[Calculation Service]] is a process that can be started by the calling application to immediately perform calculations. Running multiple computing services simultaneously supported.
[[SMath Studio Enterprise]], when properly licensed, supports integration with other applications. It may be achieved via command line interface of [[SMath Studio Enterprise]] or via [[Calculation Service]]. First option is enough if one time calculation is needed. It is performed by the following call:
  <nowiki>SMathStudio_Desktop.exe -silent</nowiki>


It is important to understand that [[Calculation Service]] is not registered in the operating system as a service, and its life cycle completely depends on the calling application. To ensure maximum ease of interaction with [[Calculation Service]] for third-party developers, along with [[SMath Studio Enterprise]] a convenient API is supplied in the form of a file in the program installation directory:
[[Calculation Service]] is a more powerful way. You may load it once and perform several calculations without loading/unloading the whole engine over and over again. Running multiple [[Calculation Service|Calculation Services]] simultaneously is also supported.
  <nowiki>SMath.UI.Service.Api.dll</nowiki>
 
When running on Windows, the [[Calculation Service]] API library is registered to interact with COM on [[SMath Studio]] installation, which makes it possible to implement [[Integration|integration]] with [[SMath Studio]] to almost any external application.
 
[[Calculation Service]] [[SMath Studio]] API use examples for different programming languages ​​can be found in the open SVN repository: https://smath.com/svn/public/integration.
 
== [[Calculation Service]] lifecycle ==
Using the provided API, working with [[Calculation Service]] is performed as follows:
# Starting [[Calculation Service]] specifying the port to use.
#: When the process starts, the application components are loaded. It may take a few seconds, depending on your hardware and installed add-ons amount in [[SMath Studio Plugins]].
# Requests to calculate .sm file(s) indicating initial data and returning calculation results.
#: Calculation occurs as quickly as possible, because application components are already loaded in memory and ready to make requests.
# Terminating the [[Calculation Service]] process.
#: After [[Calculation Service]] process is completed, its process is unloaded from memory and no longer available for any external applications interaction.


[[Category:Manual]]
[[Category:Manual]]

Latest revision as of 13:11, 21 August 2024

SMath Studio Enterprise, when properly licensed, supports integration with other applications. It may be achieved via command line interface of SMath Studio Enterprise or via Calculation Service. First option is enough if one time calculation is needed. It is performed by the following call:

 SMathStudio_Desktop.exe -silent

Calculation Service is a more powerful way. You may load it once and perform several calculations without loading/unloading the whole engine over and over again. Running multiple Calculation Services simultaneously is also supported.