+ private void notifySimsChanged( Context context ) {\r
+ Intent msg = new Intent(MESSAGE_ACTION);\r
+ msg.putExtra(TYPE, SIMS_CHANGED);\r
+\r
+ LocalBroadcastManager.getInstance(context).sendBroadcast(msg);\r
+ }\r
+\r
+ private void notifySimComplete( Context context ) {\r
+ Intent msg = new Intent(MESSAGE_ACTION);\r
+ msg.putExtra(TYPE, SIM_COMPLETE);\r
+\r
+ LocalBroadcastManager.getInstance(context).sendBroadcast(msg);\r
+ }\r
+\r
+ private void notifyMotorConfigChanged( Context context ) {\r
+ Intent msg = new Intent(MESSAGE_ACTION);\r
+ msg.putExtra(TYPE, CONFIGS_CHANGED);\r
+\r
+ LocalBroadcastManager.getInstance(context).sendBroadcast(msg);\r
+ }\r
+\r
+ public synchronized void lockSimulation( Context context, int simulationId ) {\r
+ runningSims.add(simulationId);\r
+ // TODO - someday we might want to know about this:\r
+ // notifySimsChanged( context );\r
+ }\r
+\r
+ public synchronized void unlockSimulation( Context context, int simulationId ) {\r
+ this.isModified = true;\r
+ runningSims.remove(simulationId);\r
+ notifySimComplete(context);\r
+ }\r
+\r
+ public synchronized Set<Integer> lockedSimulations() {\r
+ return new HashSet<Integer>(runningSims);\r