Changes between Initial Version and Version 1 of Cross/CognitiveEngineAPI

Show
Ignore:
Timestamp:
04/10/09 16:42:49 (15 years ago)
Author:
trnewman
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Cross/CognitiveEngineAPI

    v1 v1  
     1 
     2= Cognitive Radio API = 
     3 
     4== Cognitive Engine == 
     5 
     6The Cognitive Engine is the component that does the bulk of the work in the system.  It provides the transmission parameter optimization capabilities.  Typically this is done using some sort of Artificial Intelligence technique.   
     7 
     8The Cognitive Engine component connects directly to either the Cognitive Radio Shell or a Management Service Layer component.  Depending on the connected component, the communication protocol for the Cognitive Engine changes slightly.  
     9 
     10=== Public Member Functions === 
     11'''Constructors / Destructors'''        
     12{{{ 
     13#!cpp 
     14CognitiveEngine(); 
     15}}} 
     16 
     17{{{ 
     18#!cpp 
     19~CognitiveEngine(); 
     20}}}       
     21 
     22'''Inherited from abstract base class Component''' 
     23{{{ 
     24#!cpp 
     25void SendComponentType(); 
     26}}} 
     27 
     28{{{ 
     29#!cpp 
     30void WaitForSignal(); 
     31}}} 
     32 
     33 
     34{{{ 
     35#!cpp 
     36void Shutdown(); 
     37}}} 
     38 
     39{{{ 
     40#!cpp 
     41void Reset(); 
     42}}} 
     43 
     44{{{ 
     45#!cpp 
     46void RegisterComponent(); 
     47}}} 
     48 
     49{{{ 
     50#!cpp 
     51void DeregisterComponent(); 
     52}}} 
     53 
     54'''Inherited from abstract base class Engine''' 
     55 
     56{{{ 
     57#!cpp 
     58void ConnectToRemoteComponent(const char* serverName, const char* serverPort, const bool SML); 
     59}}} 
     60 
     61{{{ 
     62#!cpp 
     63void RegisterServices(); 
     64}}} 
     65 
     66{{{ 
     67#!cpp 
     68void DeregisterServices(); 
     69}}} 
     70 
     71=== Private Member Functions === 
     72 
     73{{{ 
     74#!cpp 
     75bool ReceiveRadioConfiguration(int socketFD)  
     76}}} 
     77    Block until parameters are received 
     78 
     79    Expects radio configuration data in ASCII character format in the following order: 
     80 
     81 * Number of utilities 
     82 * name 
     83 * units 
     84 * goal : min/max/meet 
     85 * target * 
     86 * weight 
     87 * Number of parameters 
     88 * name 
     89 * units 
     90 * min 
     91 * max 
     92 * step 
     93 * Number of affects 
     94 * name 
     95 * relation 
     96 * Number of observables 
     97 * name 
     98 * Number of affects 
     99 * name 
     100 * relation 
     101 
     102 Once radio configuration is sucessfully received, the string "ack" is sent to acknowledge receipt. 
     103 
     104{{{ 
     105#!cpp 
     106bool ReceiveExperience(int socketFD) 
     107}}} 
     108 
     109 Receive any available experience that the Cognitive Radio Shell has cached. 
     110 
     111 Experience information is sent in ASCII character format in the following order: 
     112   
     113   * experience size 
     114   * experience 
     115   * specific values of utils/observables/parameters 
     116 
     117{{{ 
     118#!cpp 
     119void GetSolution(Observable *observables); 
     120}}} 
     121 
     122{{{ 
     123#!cpp 
     124void GetSolution(Observable *observables, std::string service); 
     125}}} 
     126         
     127{{{ 
     128#!cpp 
     129void ReceiveFeedback(Observable *observables,Parameter *parameters, Utility *utilities); 
     130}}} 
     131 
     132{{{ 
     133#!cpp 
     134void ReceiveFeedback(Observable *observables, Parameter *parameters, std::string service); 
     135}}} 
     136