libprofile Documentation

Introduction

Profile service is a new subsysten that consists of two parts:

Architecture

High level view to system utilizing profile service:
  1. Profile daemon supports any number of clients
  2. Application code includes libprofile.h
  3. Application binary is linked against libprofile.so
  4. Libprofile utilizes D-Bus to communicate with the server
  5. Configuration data files define default profile values
  6. Profile daemon accepts request and sends signals on dbus
  7. Changes to profile values are stored to a file
  8. As is the name of currently active profile

ASCII art diagram of the above:

     +-------+ +-------+ +-------+
     |       | |       | |       |
     | app 1 | | app 2 | | app N |      1: Applications
     |       | |       | |       |
   ---------------------------------    2: libprofile.h
            |             |
            | libprofile  |
            |             |             3: API library
            +-------------+
                 ^ ^ ^
                 | | |
                 D-Bus                  4: IPC communication
+--------+       | | |
| static |       v v v                  5: Default values
| config |    +----------+
| files  |--->|          |
+--------+    | profiled |              6:Server Process
              |          |
              +----------+
               ^        ^
               |        |
               |        |
               v        v
       +---------+    +---------+
       | dynamic |    | current |       7: Modified values
       | config  |    | profile |       8: Active profile
       | file    |    | file    |
       +---------+    +---------+

SVN

All source code is stored in subversion repository dms, subdirectory profiled.

Generated on Fri Dec 6 12:34:05 2013 for libprofile by  doxygen 1.5.6