Compare commits
	
		
			4 Commits
		
	
	
		
			b3cec6c926
			...
			08ad191f2e
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 08ad191f2e | |||
| dd9498f38d | |||
| 4002757765 | |||
| c1e65d41ee | 
| @@ -2,15 +2,15 @@ | |||||||
| #include "xf/timeout.h" | #include "xf/timeout.h" | ||||||
| #include "xf/initialevent.h" | #include "xf/initialevent.h" | ||||||
| #include "xf/behavior.h" | #include "xf/behavior.h" | ||||||
|  | #include "trace/trace.h" | ||||||
|  |  | ||||||
| // TODO done: Implement code for XFBehavior class | // TODO done: Implement code for XFBehavior class | ||||||
|  |  | ||||||
| XFBehavior::XFBehavior() { | XFBehavior::XFBehavior() { | ||||||
|  |     this->deleteOnTerminate_ = false; | ||||||
| } | } | ||||||
|  |  | ||||||
| XFBehavior::~XFBehavior() { | XFBehavior::~XFBehavior() { | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFBehavior::startBehavior() { | void XFBehavior::startBehavior() { | ||||||
| @@ -18,20 +18,22 @@ void XFBehavior::startBehavior() { | |||||||
| } | } | ||||||
|  |  | ||||||
| void XFBehavior::pushEvent(XFEvent *pEvent) { | void XFBehavior::pushEvent(XFEvent *pEvent) { | ||||||
|     pEvent->setBehavior(this); |     if(pEvent->getBehavior()==nullptr) { | ||||||
|  |         pEvent->setBehavior(this); | ||||||
|  |     } | ||||||
|     this->getDispatcher()->pushEvent(pEvent); |     this->getDispatcher()->pushEvent(pEvent); | ||||||
| } | } | ||||||
|  |  | ||||||
| bool XFBehavior::deleteOnTerminate() const { | bool XFBehavior::deleteOnTerminate() const { | ||||||
|     return deleteOnTerminate_; |     return this->deleteOnTerminate_; | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFBehavior::setDeleteOnTerminate(bool deleteBehaviour) { | void XFBehavior::setDeleteOnTerminate(bool deleteBehaviour) { | ||||||
|     deleteOnTerminate_ = deleteBehaviour; |     this->deleteOnTerminate_ = deleteBehaviour; | ||||||
| } | } | ||||||
|  |  | ||||||
| const XFEvent *XFBehavior::getCurrentEvent() const { | const XFEvent *XFBehavior::getCurrentEvent() const { | ||||||
|     return pCurrentEvent_; |     return this->pCurrentEvent_; | ||||||
| } | } | ||||||
|  |  | ||||||
| interface::XFDispatcher *XFBehavior::getDispatcher() { | interface::XFDispatcher *XFBehavior::getDispatcher() { | ||||||
| @@ -40,23 +42,26 @@ interface::XFDispatcher *XFBehavior::getDispatcher() { | |||||||
|  |  | ||||||
| const XFTimeout *XFBehavior::getCurrentTimeout() { | const XFTimeout *XFBehavior::getCurrentTimeout() { | ||||||
|     if(pCurrentEvent_->getEventType() == XFEvent::Timeout) { |     if(pCurrentEvent_->getEventType() == XFEvent::Timeout) { | ||||||
|         return (XFTimeout*) pCurrentEvent_; |         return (XFTimeout*) this->pCurrentEvent_; | ||||||
|     } else { |     } else { | ||||||
|         return nullptr; |         return nullptr; | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFBehavior::setCurrentEvent(const XFEvent *pEvent) { | void XFBehavior::setCurrentEvent(const XFEvent *pEvent) { | ||||||
|     pCurrentEvent_ = pEvent; |     this->pCurrentEvent_ = pEvent; | ||||||
| } | } | ||||||
|  |  | ||||||
| XFBehavior::TerminateBehavior XFBehavior::process(const XFEvent *pEvent) { | XFBehavior::TerminateBehavior XFBehavior::process(const XFEvent *pEvent) { | ||||||
|     setCurrentEvent(pEvent); |     this->setCurrentEvent(pEvent); | ||||||
|     XFEventStatus status = XFEventStatus::Unknown; |     XFEventStatus status = XFEventStatus::Unknown; | ||||||
|     status = processEvent(); |     status = this->processEvent(); | ||||||
|     if(status == XFEventStatus::Consumed) { |     if(status == XFEventStatus::Consumed && pEvent->deleteAfterConsume()) { | ||||||
|         return deleteOnTerminate_; |         delete pEvent; | ||||||
|     } else { |  | ||||||
|         return false; |  | ||||||
|     } |     } | ||||||
|  |     XFBehavior::TerminateBehavior terminateBehavior = false; | ||||||
|  |     if(status == XFEventStatus::Terminate) { | ||||||
|  |         terminateBehavior = true; | ||||||
|  |     } | ||||||
|  |     return terminateBehavior; | ||||||
| } | } | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| XFCustomEvent::XFCustomEvent(int id, interface::XFBehavior *pBehavior): | XFCustomEvent::XFCustomEvent(int id, interface::XFBehavior *pBehavior): | ||||||
|     XFEvent(XFEventType::Unknown, id){ |     XFEvent(XFEventType::Event, id){ | ||||||
|     setBehavior(pBehavior); |     setBehavior(pBehavior); | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -4,6 +4,7 @@ | |||||||
|  |  | ||||||
| XFTimeout::XFTimeout(int id, int interval, interface::XFBehavior *pBehavior): | XFTimeout::XFTimeout(int id, int interval, interface::XFBehavior *pBehavior): | ||||||
|     XFEvent(XFEventType::Timeout, id), interval_(interval) { |     XFEvent(XFEventType::Timeout, id), interval_(interval) { | ||||||
|  |     this->setRelTicks(this->getInterval()); | ||||||
|     setBehavior(pBehavior); |     setBehavior(pBehavior); | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,10 +24,10 @@ interface::XFDispatcher * interface::XFDispatcher::getInstance() { | |||||||
|     return &dispatcher; |     return &dispatcher; | ||||||
| } | } | ||||||
|  |  | ||||||
| // TODO: Implement code for XFDispatcher class | // TODO done: Implement code for XFDispatcher class | ||||||
|  |  | ||||||
| XFDispatcher::XFDispatcher() { | XFDispatcher::XFDispatcher() { | ||||||
|  |     this->pMutex_ = interface::XFMutex::create(); | ||||||
| } | } | ||||||
|  |  | ||||||
| XFDispatcher::~XFDispatcher() { | XFDispatcher::~XFDispatcher() { | ||||||
| @@ -35,14 +35,22 @@ XFDispatcher::~XFDispatcher() { | |||||||
| } | } | ||||||
|  |  | ||||||
| void XFDispatcher::dispatchEvent(const XFEvent *pEvent) const { | void XFDispatcher::dispatchEvent(const XFEvent *pEvent) const { | ||||||
|     if(pEvent->getBehavior()->process(pEvent)) { // TODO look weird |     //Trace::out("[DEBUG] - Dispatch Event"); | ||||||
|         //events_.pop(); |     XFBehavior::TerminateBehavior terminateBehavior; | ||||||
|         delete pEvent; |     terminateBehavior = pEvent->getBehavior()->process(pEvent); | ||||||
|  |     if(terminateBehavior && pEvent->getBehavior()->deleteOnTerminate()) { | ||||||
|  |         delete pEvent->getBehavior(); | ||||||
|  |         if(pEvent->deleteAfterConsume()) { | ||||||
|  |             delete pEvent; | ||||||
|  |         } | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFDispatcher::pushEvent(XFEvent *pEvent) { | void XFDispatcher::pushEvent(XFEvent *pEvent) { | ||||||
|     events_.push(pEvent); |     //Trace::out("[DEBUG] - Push Event"); | ||||||
|  |     this->pMutex_->lock(); | ||||||
|  |     events_.push(pEvent, false); | ||||||
|  |     this->pMutex_->unlock(); | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFDispatcher::scheduleTimeout(int timeoutId, int interval, interface::XFBehavior *pBehavior) { | void XFDispatcher::scheduleTimeout(int timeoutId, int interval, interface::XFBehavior *pBehavior) { | ||||||
| @@ -54,15 +62,22 @@ void XFDispatcher::unscheduleTimeout(int timeoutId, interface::XFBehavior *pBeha | |||||||
| } | } | ||||||
|  |  | ||||||
| void XFDispatcher::executeOnce() { | void XFDispatcher::executeOnce() { | ||||||
|     //XFEvent* event; |     if(!this->events_.empty()) { | ||||||
|     dispatchEvent(events_.front()); |  | ||||||
|     events_.pop(); |         this->pMutex_->lock(); | ||||||
|  |         const XFEvent *ev = this->events_.front(); | ||||||
|  |         this->events_.pop(); | ||||||
|  |         this->pMutex_->unlock(); | ||||||
|  |  | ||||||
|  |         dispatchEvent(ev); | ||||||
|  |     } | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| int XFDispatcher::execute(const void *param) { | int XFDispatcher::execute(const void *param) { | ||||||
|  |     (void) param; | ||||||
|     while(true){ |     while(true){ | ||||||
|         executeOnce(); |         this->executeOnce(); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -8,6 +8,9 @@ | |||||||
| #include "xf/interface/behavior.h" | #include "xf/interface/behavior.h" | ||||||
| #include "xf/interface/mutex.h" | #include "xf/interface/mutex.h" | ||||||
| #include "timeoutmanager.h" | #include "timeoutmanager.h" | ||||||
|  | #if defined(XF_TRACE_EVENT_PUSH_POP) && (XF_TRACE_EVENT_PUSH_POP != 0) | ||||||
|  |     #include "trace/trace.h" | ||||||
|  | #endif // XF_TRACE_EVENT_PUSH_POP | ||||||
|  |  | ||||||
| using Mutex = interface::XFMutex;       // Rename XFMutex interface class to Mutex for easier use. | using Mutex = interface::XFMutex;       // Rename XFMutex interface class to Mutex for easier use. | ||||||
|  |  | ||||||
| @@ -24,6 +27,7 @@ interface::XFTimeoutManager * interface::XFTimeoutManager::getInstance() { | |||||||
| // TODO done: Implement code for XFTimeoutManager class | // TODO done: Implement code for XFTimeoutManager class | ||||||
|  |  | ||||||
| XFTimeoutManager::XFTimeoutManager() { | XFTimeoutManager::XFTimeoutManager() { | ||||||
|  |     this->pMutex_ = interface::XFMutex::create(); | ||||||
| } | } | ||||||
|  |  | ||||||
| XFTimeoutManager::~XFTimeoutManager() { | XFTimeoutManager::~XFTimeoutManager() { | ||||||
| @@ -31,41 +35,64 @@ XFTimeoutManager::~XFTimeoutManager() { | |||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::addTimeout(XFTimeout *pNewTimeout) { | void XFTimeoutManager::addTimeout(XFTimeout *pNewTimeout) { | ||||||
|     pMutex_->lock(); |     this->pMutex_->lock(); | ||||||
|     timeouts_.push_front(pNewTimeout); |     this->timeouts_.push_back(pNewTimeout); | ||||||
|     pMutex_->unlock(); |     this->pMutex_->unlock(); | ||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::returnTimeout(XFTimeout *pTimeout) { | void XFTimeoutManager::returnTimeout(XFTimeout *pTimeout) { | ||||||
|     pMutex_->lock(); |     this->pMutex_->lock(); | ||||||
|     XFDispatcher::getInstance()->pushEvent(pTimeout); |     XFDispatcher::getInstance()->pushEvent(pTimeout); | ||||||
|     timeouts_.remove(pTimeout); |     this->timeouts_.remove(pTimeout); | ||||||
|     pMutex_->unlock(); |     this->pMutex_->unlock(); | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::start(std::function<void (uint32_t)> startTimeoutManagerTimer) { | void XFTimeoutManager::start(std::function<void (uint32_t)> startTimeoutManagerTimer) { | ||||||
|     startTimeoutManagerTimer(tickInterval_); |     startTimeoutManagerTimer(this->tickInterval_); | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::scheduleTimeout(int32_t timeoutId, int32_t interval, interface::XFBehavior *pBehavior) { | void XFTimeoutManager::scheduleTimeout(int32_t timeoutId, int32_t interval, interface::XFBehavior *pBehavior) { | ||||||
|  |     string str = "[DEBUG] - Schedule Timeout: "; | ||||||
|  |     str += to_string(timeoutId); | ||||||
|  |     //Trace::out(str); | ||||||
|     ::XFTimeout* timeout = new XFTimeout(timeoutId, interval, pBehavior); |     ::XFTimeout* timeout = new XFTimeout(timeoutId, interval, pBehavior); | ||||||
|     addTimeout(timeout); |     addTimeout(timeout); | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::unscheduleTimeout(int32_t timeoutId, interface::XFBehavior *pBehavior) { | void XFTimeoutManager::unscheduleTimeout(int32_t timeoutId, interface::XFBehavior *pBehavior) { | ||||||
|     for(XFTimeout* timeout : timeouts_) { |     string str = "[DEBUG] - Unschedule Timeout: "; | ||||||
|         bool id = ( timeout->getId() == timeoutId ); |     str += to_string(timeoutId); | ||||||
|         bool behavior = ( timeout->getBehavior() == pBehavior); |     //Trace::out(str); | ||||||
|         if( id && behavior ) { |     this->pMutex_->lock(); | ||||||
|             timeouts_.remove(timeout); |     TimeoutList::iterator it; | ||||||
|  |     for(it = this->timeouts_.begin(); it != this->timeouts_.end(); it++){ | ||||||
|  |  | ||||||
|  |         if((*it)->getId()==timeoutId && (*it)->getBehavior() == pBehavior) { | ||||||
|  |             it = this->timeouts_.erase(it); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|     } |     } | ||||||
|  |     this->pMutex_->unlock(); | ||||||
| } | } | ||||||
|  |  | ||||||
| void XFTimeoutManager::tick() { | void XFTimeoutManager::tick() { | ||||||
|     for(XFTimeout* timeout : timeouts_) { |     //Trace::out("[DEBUG] - Tick"); | ||||||
|         timeout->substractFromRelTicks(tickInterval_); |     if(!this->timeouts_.empty()) { | ||||||
|  |         TimeoutList::iterator it; | ||||||
|  |  | ||||||
|  |         this->pMutex_->lock(); | ||||||
|  |         for(it=this->timeouts_.begin(); it != this->timeouts_.end(); it++) { | ||||||
|  |             if((*it)->getRelTicks() > 0) { | ||||||
|  |                 (*it)->substractFromRelTicks(this->tickInterval_); | ||||||
|  |             } else { | ||||||
|  |                 XFEvent* ev = *(it); | ||||||
|  |                 XFDispatcher::getInstance()->pushEvent(ev); | ||||||
|  |                 it = this->timeouts_.erase(it); | ||||||
|  |                 it--; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         this->pMutex_->unlock(); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -11,6 +11,8 @@ | |||||||
|     #define USE_XF_IDF_QT_EVENT_QUEUE_CLASS                     1 |     #define USE_XF_IDF_QT_EVENT_QUEUE_CLASS                     1 | ||||||
|     #define USE_XF_IDF_QT_MUTEX_CLASS                           1 |     #define USE_XF_IDF_QT_MUTEX_CLASS                           1 | ||||||
|  |  | ||||||
|  |     #define XF_TRACE_EVENT_PUSH_POP                             1 | ||||||
|  |  | ||||||
|     #include "idf-qt/eventqueue.h" |     #include "idf-qt/eventqueue.h" | ||||||
| #endif // PORT_IDF_QT | #endif // PORT_IDF_QT | ||||||
|  |  | ||||||
|   | |||||||
| @@ -0,0 +1,27 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||||
|  | <project> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1635794078" name="Debug"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1441404980" name="Release"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | </project> | ||||||
| @@ -0,0 +1,27 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||||
|  | <project> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.160913188" name="Debug"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1470338518" name="Release"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | </project> | ||||||
| @@ -0,0 +1,27 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||||
|  | <project> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.192308827" name="Debug"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1342829208" name="Release"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | </project> | ||||||
| @@ -0,0 +1,27 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||||
|  | <project> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.666965065" name="Debug"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.661535232" name="Release"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | </project> | ||||||
| @@ -0,0 +1,27 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||||
|  | <project> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.912685179" name="Debug"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | 	<configuration id="com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.856286833" name="Release"> | ||||||
|  | 		<extension point="org.eclipse.cdt.core.LanguageSettingsProvider"> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/> | ||||||
|  | 			<provider copy-of="extension" id="org.eclipse.cdt.managedbuilder.core.GCCBuildCommandParser"/> | ||||||
|  | 			<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1172803102310709121" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true"> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.gcc"/> | ||||||
|  | 				<language-scope id="org.eclipse.cdt.core.g++"/> | ||||||
|  | 			</provider> | ||||||
|  | 		</extension> | ||||||
|  | 	</configuration> | ||||||
|  | </project> | ||||||
		Reference in New Issue
	
	Block a user