-
Notifications
You must be signed in to change notification settings - Fork 6
Creating a new profile
iviLink Profile provides connectivity functionality that is declared by Profile API. Profile inherits Profile API and implements its functionality. Every Profile and Profile API has its own UID (unique string value in system).
If you want to create Profile API do the next steps:
-
Create C++ class that inherits CProfile class (from CProfile.hpp)
-
Declare its functionality by adding pure virtual functions
-
Create Profile API Manifest. It's an XML-file that contains information about its version, role and UID.
Example of simple class with Profile API: ISeatProfileAPI.hpp Example of Profile API Manifest: SeatProfile_API.xml
For creating Profile do the next steps:
-
Create C++ class that inherits Profile API class and IChannelSupervisorTubeObserver class (from IChannelSupervisorObserver.hpp)
-
Implement functionality of Profile API.
-
Add network interaction code:
- add network messages from current side to another by using functionality of Channel Supervisor Tube (from ChannelSupervisorTube.hpp)
- implement pure virtual functions of IChannelSupervisorObserver (to react on actions from another side of system)
- Create Profile Manifest. It’s an XML-file that contains its name, UID, version, UID of Profile API and UID of complement Profile (complement is Profile from another side that communicates with current). Profile can complement itself.
Detailed example of Profile implementation is here: Seat Profile
Example of Profile Manifest: Seat Profile Manifest