mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
[wpilibc] Add mechanism to reset various global structures (#4007)
This commit is contained in:
@@ -29,11 +29,23 @@ struct Instance {
|
||||
};
|
||||
} // namespace
|
||||
|
||||
static Instance& GetInstance() {
|
||||
static Instance instance;
|
||||
static std::unique_ptr<Instance>& GetInstanceHolder() {
|
||||
static std::unique_ptr<Instance> instance = std::make_unique<Instance>();
|
||||
return instance;
|
||||
}
|
||||
|
||||
static Instance& GetInstance() {
|
||||
return *GetInstanceHolder();
|
||||
}
|
||||
|
||||
#ifndef __FRC_ROBORIO__
|
||||
namespace frc::impl {
|
||||
void ResetSmartDashboardInstance() {
|
||||
std::make_unique<Instance>().swap(GetInstanceHolder());
|
||||
}
|
||||
} // namespace frc::impl
|
||||
#endif
|
||||
|
||||
void SmartDashboard::init() {
|
||||
GetInstance();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user