Files
hayodea aec3cbedf2 Split: Expose name via CompThr's derivatives' ctors
This completes the functional work of splitting libspinscale off
from SMO. Spinscale shouldn't have any real dependencies on SMO
from here on out.
2026-02-22 18:54:56 -04:00

34 lines
643 B
C++

#ifndef SMO_COMPONENT_THREAD_H
#define SMO_COMPONENT_THREAD_H
#include <config.h>
#include <string>
// Include the spinscale componentThread.h which provides ComponentThread, PuppetThread, etc.
#include <spinscale/componentThread.h>
namespace smo {
/* Application-specific thread ID enum
* Using regular enum (not enum class) to allow implicit conversion to ThreadId
*/
enum SmoThreadId : sscl::ThreadId
{
MRNTT = 0,
DIRECTOR,
SIMULATOR,
SUBCONSCIOUS,
BODY,
WORLD
#ifdef CONFIG_WORLD_USE_BODY_THREAD
= BODY
#endif
,
N_ITEMS
};
std::string getThreadName(sscl::ThreadId id);
} // namespace smo
#endif // SMO_COMPONENT_THREAD_H