fix an initialization order fiasco

This commit is contained in:
Seth Alves 2017-06-24 18:53:00 -07:00
parent 9c99b9d4c5
commit 05f0ec267e
3 changed files with 10 additions and 3 deletions
libraries/controllers/src/controllers

View file

@ -9,9 +9,14 @@
#include "Input.h"
namespace controller {
const Input Input::INVALID_INPUT = Input(0x7fffffff);
const Input Input::INVALID_INPUT = invalidInput();
const uint16_t Input::INVALID_DEVICE = Input::INVALID_INPUT.device;
const uint16_t Input::INVALID_CHANNEL = Input::INVALID_INPUT.channel;
const uint16_t Input::INVALID_TYPE = Input::INVALID_INPUT.type;
const Input& Input::invalidInput() {
static const Input INVALID_INPUT = Input(0x7fffffff);
return INVALID_INPUT;
}
}

View file

@ -83,6 +83,8 @@ struct Input {
using NamedPair = QPair<Input, QString>;
using NamedVector = QVector<NamedPair>;
static const Input& invalidInput();
};
}

View file

@ -47,8 +47,8 @@
namespace controller {
const uint16_t UserInputMapper::STANDARD_DEVICE = 0;
const uint16_t UserInputMapper::ACTIONS_DEVICE = Input::INVALID_DEVICE - 0x00FF;
const uint16_t UserInputMapper::STATE_DEVICE = Input::INVALID_DEVICE - 0x0100;
const uint16_t UserInputMapper::ACTIONS_DEVICE = Input::invalidInput().device - 0x00FF;
const uint16_t UserInputMapper::STATE_DEVICE = Input::invalidInput().device - 0x0100;
}
// Default contruct allocate the poutput size with the current hardcoded action channels