X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fhw_xapp_main.cc;h=aa51d201e78e657fee9b07125f5749900baf4223;hb=91d30a6530398a9c7e50a15ea1cf9a027953bd39;hp=3c45e6adc491a503c418c41ac92b3895039da769;hpb=6df19a4dacb4fcb6edb35a32af9c8f5c07c95e37;p=ric-app%2Fhw.git diff --git a/src/hw_xapp_main.cc b/src/hw_xapp_main.cc index 3c45e6a..aa51d20 100644 --- a/src/hw_xapp_main.cc +++ b/src/hw_xapp_main.cc @@ -22,8 +22,6 @@ */ #include "xapp.hpp" -#include "subscription_request.hpp" -#include "xapp_sdl.hpp" void signalHandler( int signum ) { cout << "Interrupt signal (" << signum << ") received.\n"; @@ -32,6 +30,15 @@ void signalHandler( int signum ) { int main(int argc, char *argv[]){ + // Get the thread id + std::thread::id my_id = std::this_thread::get_id(); + std::stringstream thread_id; + std::stringstream ss; + + thread_id << my_id; + + mdclog_write(MDCLOG_INFO, "Starting thread %s", thread_id.str().c_str()); + //get configuration XappSettings config; //change the priority depending upon application requirement @@ -39,53 +46,31 @@ int main(int argc, char *argv[]){ config.loadEnvVarSettings(); config.loadCmdlineSettings(argc, argv); + //Register signal handler to stop + signal(SIGINT, signalHandler); + signal(SIGTERM, signalHandler); + //getting the listening port and xapp name info std::string port = config[XappSettings::SettingName::HW_PORTS]; std::string name = config[XappSettings::SettingName::XAPP_NAME]; - //initialize rmr std::unique_ptr rmr; - rmr = std::make_unique(name,port); + rmr = std::make_unique(port); rmr->xapp_rmr_init(); - //Register signal handler to stop - signal(SIGINT, signalHandler); - signal(SIGTERM, signalHandler); - - //Test SDL. - XappSDL sdl = XappSDL("hw-xapp"); - - //Initiate the Xapp functionality - std::unique_ptr hw_xapp = std::make_unique(std::ref(config), std::ref(*rmr),std::ref(sdl)); - - - //define the startup mode. - hw_xapp->startup(); - - //Register Callback Handlers - //Register E2 Msg Handlers - Subscription/Indication. - //Register A1 Msg Handlers. - //Register Callback Handlers - - - //start the receiver thread listening at HW_PORT - //currently only one receiver thread. In total how many receiver threads depend on the xapp developer. - //Register all the handlers required and start the receiver - - //register_msgproc(RIC_SUB_RESP, sub_handler); - //register_msgproc(RIC_SUB_DEL_RESP, sub_handler); - //register_msgproc(RIC_SUB_FAILURE, sub_handler); - - hw_xapp->start_xapp_receiver(); - sleep(5); + std::unique_ptr hw_xapp = std::make_unique(std::ref(config),std::ref(*rmr)); + //hw_xapp->startup(); + std::unique_ptr mp_handler = std::make_unique(config[XappSettings::SettingName::XAPP_ID]); + //hw_xapp->register_handler(std::bind(&XappMsgHandler::operator (),mp_handler.get(),std::placeholders::_1,std::placeholders::_2)); + hw_xapp->start_xapp_receiver(std::ref(*mp_handler)); //Delete all subscriptions if any based on Xapp Mode. //xapp->shutdown(); - while(1){ + while(1){ sleep(1); }