original_docstring: 
              Update the state of this Supervisor after occurance of the specified event
              and update the enabled events.
          
docstring: Update the state of this Supervisor after occurance of the specified event
  and update the enabled events.
docstring_tokens: Update the state of this Supervisor after occurance of the specified event and update the enabled events .
code: def state_update(self, event):
          '''
              Update the state of this Supervisor after occurance of the specified event
              and update the enabled events.
          '''
          # Verify if the event belongs to this Supervisor
          if event in self.__alpha:
              # Verify if the event trigger a transition
              if self.__trans[(self.__trans['st_node'] == self.__current_state) & (self.__trans['event'] == event)].empty:
                  print("[SUP - " + self.__name + "]: ALERT!!!!\tThis transition is not modeled!")         # Alert if the last event was not modeled by this plant, but on its alphabet
              else:
                  # Update current state
                  self.__current_state = self.__trans.at[self.__trans[(self.__trans['st_node'] == self.__current_state) & (self.__trans['event'] == event)].index[0],'end_node']
                  # print("[SUP - " + self.__name + "]: New state:  ", self.__current_state)
  
                  # Export the automaton
                  self.__SUP.export_automaton(self.__current_state)      
  
              # Enable and disable events that belong to this SUP
              for e in self.__alpha:
                  if (not self.__trans[(self.__trans['st_node'] == self.__current_state) & (self.__trans['event'] == e)].empty) or (self.__events.loc[e,'controllable'] == False):
                      self.__events_list[e].set_status(self.__name, True)         # Enable event
                  else:
                      self.__events_list[e].set_status(self.__name, False)        # Disable event
          else:
              # print("The event '",event,"' does not exist on this SUP!")
              pass
code_tokens: def state_update ( self , event ) : if event in self . __alpha : if self . __trans [ ( self . __trans [ 'st_node' ] == self . __current_state ) & ( self . __trans [ 'event' ] == event ) ] . empty : print ( "[SUP - " + self . __name + "]: ALERT!!!!\tThis transition is not modeled!" ) else : self . __current_state = self . __trans . at [ self . __trans [ ( self . __trans [ 'st_node' ] == self . __current_state ) & ( self . __trans [ 'event' ] == event ) ] . index [ 0 ] , 'end_node' ] self . __SUP . export_automaton ( self . __current_state ) for e in self . __alpha : if ( not self . __trans [ ( self . __trans [ 'st_node' ] == self . __current_state ) & ( self . __trans [ 'event' ] == e ) ] . empty ) or ( self . __events . loc [ e , 'controllable' ] == False ) : self . __events_list [ e ] . set_status ( self . __name , True ) else : self . __events_list [ e ] . set_status ( self . __name , False ) else : pass
short_docstring: Update the state of this Supervisor after occurance of the specified event
  and update the enabled events.
short_docstring_tokens: Update the state of this Supervisor after occurance of the specified event and update the enabled events .
comment: '''
              Update the state of this Supervisor after occurance of the specified event
              and update the enabled events.
          '''$SEP$# Verify if the event belongs to this Supervisor$SEP$# Verify if the event trigger a transition$SEP$# Alert if the last event was not modeled by this plant, but on its alphabet$SEP$# Update current state$SEP$# print("[SUP - " + self.__name + "]: New state:  ", self.__current_state)$SEP$# Export the automaton$SEP$# Enable and disable events that belong to this SUP$SEP$# Enable event$SEP$# Disable event$SEP$# print("The event '",event,"' does not exist on this SUP!")