Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Welcome to Appline Wiki!
Appline allow to communicate between processes with Anonymous Pipes, to send messages or complex objects. Anonymous pipes provide interprocess communication on a local computer. To present how to use such a mechanism, you can use the example: Steam(Launcher) > Dota2.exe(Application). So you can be notified for any changes in your game or collect analytic information.
LineFactory - A factory for creating lines, both for the starting point and for the end point.
- Launcher - Create a starting point. In the parameters we specify the path to the second application, the timeout allocated for the execute, additional arguments for second application and the event object that you can listen to.
- Application - Create an endpoint. Create this object as close as possible to the input point and transfer the passed parameters from the starting point to the object, as well as the object for listening.
NotifyMessage/NotifyContext - This object registers events for listening. It is preferable to create it before starting the factory to create a line.
- Timeout - It will be called if the start fails for the allotted time.
- Connected - It will be called when the connection is successful.
- Disconnected - It will be called when the connection fails.
- Message - It will be called when a string is received.
- ContextChanges - It will be called when the context object is received.
- Exception - It will be called when the line throw any exception
MessageLine/ContextLine - The main objects to work for and will come changes. Please note, it is important to understand that changing data at the ends of lines can lead to recursion. In order to prevent recursion, use a stub. An example of the work will follow the link below.
- Notify - The notification object.
- IsConnected - Indicates the status of the line.
- IsRunning - Indicates whether the process is running.
- IsLauncher - Indicates whether this line is the main line.
- Send - Sends the string/object to the other end of the line.
- Close - Closes the line.