Skip to content

Creating a new profile

vplachkov edited this page Aug 9, 2012 · 8 revisions

iviLink Profile provides connectivity and any other functionality that is declared by Profile API. Profile inherits Profile API class and implements its functionality. Every Profile and Profile API has its own UID (unique string value in system).


For creating Profile do the next steps:

  1. Create C++ class that inherits Profile API class and iviLink::Channel::CChannelHandler class IChannelSupervisorTubeObserver class (from [IChannelSupervisorObserver.hpp]
  2. Use macros to declare profile: IVILINK_PROFILE_BEGIN, IVILINK_PROFILE_DECLARE, IVILINK_PROFILE_NAME(), IVILINK_PROFILE_VERSION(), IVILINK_PROFILE_UID(), IVILINK_PROFILE_API_UID(), IVILINK_PROFILE_END(). example
  3. Implement other functionality of Profile API.
  4. To make network functionality use sendBuffer() function, bufferReceived() callback (from Channel.hpp) and CBuffer class.
  5. Create XML manifest (example)
  6. Add manifest to the Profile database file

Detailed example of simple Profile implementation is here: Basic Sample Profile

Example of Profile Manifest: Seat Profile Manifest

Clone this wiki locally