blob: dd6c455683709ee7d3adafcc59e0cf34d8409eb4 [file] [log] [blame]
[%- stateList = [] %]
[%- eventList = [] %]
[%- actionList = [] %]
[%- FOREACH ProcedureList = TemplateInputVar %]
[%- FOREACH Procedure = ProcedureList %]
[%- FOREACH State = Procedure.States %]
[%- stateList.push(State.Name) %]
[%- FOREACH Event = State.Events %]
[%- eventList.push(Event.Name) %]
[%- actionList = actionList.merge(Event.Actions) %]
[%- END %]
[%- END %]
[%- END %]
[%- END %]
[%- stateList = stateList.unique.sort %]
[%- eventList = eventList.unique.sort %]
[%- actionList = actionList.unique.sort -%]
/*
* Copyright 2019-present, Infosys Limited.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef SM_ENUMS_H
#define SM_ENUMS_H
/**************************************
*
* This is an auto generated file.
* Please do not edit this file.
* All edits to be made through template source file
* <TOP-DIR/scripts/SMCodeGen/templates/stateMachineTmpls/enum.tt>
**************************************/
enum State_e
{
[%- FOREACH state = stateList%]
[% state %],[% END %]
END_STATE
};
static constexpr const char* States[] =
{
[%- FOREACH state = stateList%]
"[% state %]",[%END%]
"END_STATE"
};
enum Event_e
{
[%- FOREACH event = eventList%]
[% event %],[%END%]
END_EVENT
};
static constexpr const char* Events[] =
{
[%- FOREACH event = eventList%]
"[% event %]",[%END%]
"END_EVENT"
};
enum Action_e
{
[%- FOREACH actions = actionList%]
[% actions %],[% END %]
END_ACTION
};
static constexpr const char* Actions[] =
{
[%- FOREACH action = actionList%]
"[% action %]",[%END%]
"END_ACTION"
};
#endif