37namespace perception_msgs {
39namespace object_access {
43 const std::string kExceptionUnknownModel =
"Unknown model ID: ";
52 return state.continuous_state.size();
76 return EGO::CONTINUOUS_STATE_SIZE;
77 case EGORWS::MODEL_ID:
78 return EGORWS::CONTINUOUS_STATE_SIZE;
79 case ISCACTR::MODEL_ID:
80 return ISCACTR::CONTINUOUS_STATE_SIZE;
81 case HEXAMOTION::MODEL_ID:
82 return HEXAMOTION::CONTINUOUS_STATE_SIZE;
83 case TRAFFICLIGHT::MODEL_ID:
84 return TRAFFICLIGHT::CONTINUOUS_STATE_SIZE;
86 throw std::invalid_argument(kExceptionUnknownModel + std::to_string(model_id));
97 return state.discrete_state.size();
107 template <
typename T>
121 return EGO::DISCRETE_STATE_SIZE;
122 case EGORWS::MODEL_ID:
123 return EGORWS::DISCRETE_STATE_SIZE;
124 case ISCACTR::MODEL_ID:
125 return ISCACTR::DISCRETE_STATE_SIZE;
126 case HEXAMOTION::MODEL_ID:
127 return HEXAMOTION::DISCRETE_STATE_SIZE;
128 case TRAFFICLIGHT::MODEL_ID:
129 return TRAFFICLIGHT::DISCRETE_STATE_SIZE;
131 throw std::invalid_argument(kExceptionUnknownModel + std::to_string(model_id));
142 return state.continuous_state_covariance.size();
152 template <
typename T>
176 state.continuous_state_covariance[n * i + j] = CONTINUOUS_STATE_COVARIANCE_UNKNOWN;
int getDiscreteStateSize(const ObjectState &state)
Get the discrete state size for a given object state.
void setContinuousStateCovarianceToUnknownAt(ObjectState &state, const unsigned int i, const unsigned int j)
Set the continuous state covariance to unknown at (i,j) for a given object state.
int getContinuousStateSize(const ObjectState &state)
Get the continuous state size for a given object state.
int getContinuousStateCovarianceSize(const ObjectState &state)
Get the continuous state covariance size for a given object state.