= Cognitive Radio API = === Component class === Abstract base class that defines functions global to all components in a VTCROSS system. All components inherit from this class, and must implement each of the following functions: {{{ #!cpp virtual std::string GetRemoteComponentType(int32_t componentSocketFD) }}} {{{ #!cpp virtual void SendComponentType() = 0; }}} {{{ #!cpp virtual void WaitForSignal() = 0; }}} {{{ #!cpp virtual void Shutdown() = 0; }}} {{{ #!cpp virtual void Reset() = 0; }}} {{{ #!cpp virtual void RegisterComponent() = 0; }}} {{{ #!cpp virtual void DeregisterComponent() = 0; }}} === Engine class === Abstract base class that inherits publically from Component; Policy and Cognitive engines must derive from this class and implement the following functions as well as those defined in Component: {{{ #!cpp virtual void ConnectToRemoteComponent(const char* serverName, const char* serverPort, const bool SML) = 0; }}} {{{ #!cpp virtual void RegisterServices() = 0; }}} {{{ #!cpp virtual void DeregisterServices() = 0; }}} === Component Classes === [wiki:Cross/CognitiveEngineAPI VTCROSS Cognitive Engine API Information] [wiki:Cross/PolicyEngineAPI VTCROSS Policy Engine API Information] [wiki:Cross/ServiceManagementLayerAPI VTCROSS Service Management Layer API Information]