Package ptolemy.actor

Examples of ptolemy.actor.Manager


        // because parseFile() works best on relative pathnames and
        // has problems finding resources like files specified in
        // parameters if the xml file was specified as an absolute path.
        //CompositeActor toplevel = (CompositeActor) parser.parse(null,
        //        new File(xmlFilename).toURL());
        Manager manager = new Manager(_toplevel.workspace(),
                "MoMLSimpleStatisticalApplication");
        _toplevel.setManager(manager);
        _toplevel.addChangeListener(this);

        Runtime runtime = Runtime.getRuntime();

        // Get the memory stats before we get the model name
        // just to be sure that getting the model name does
        // not skew are data too much
        long totalMemory1 = runtime.totalMemory() / 1024;
        long freeMemory1 = runtime.freeMemory() / 1024;

        String modelName = _toplevel.getName();

        System.out.println(modelName + ": Stats before execution:    "
                + Manager.timeAndMemory(startTime, totalMemory1, freeMemory1));

        // Second, we run and print memory stats.
        manager.execute();

        long totalMemory2 = runtime.totalMemory() / 1024;
        long freeMemory2 = runtime.freeMemory() / 1024;
        String standardStats = Manager.timeAndMemory(startTime, totalMemory2,
                freeMemory2);
View Full Code Here


        // and then preinitialize and resolve types.
        if (isTopLevel()) {

            // If necessary, create a manager.
            Actor container = ((Actor) getContainer());
            Manager manager = container.getManager();

            if (manager == null) {
                CompositeActor toplevel = (CompositeActor) ((NamedObj) container)
                        .toplevel();
                manager = new Manager(toplevel.workspace(), "Manager");
                toplevel.setManager(manager);
            }

            try {
                manager.preinitializeAndResolveTypes();
                returnValue = _generateCode(code);
            } finally {
                // We call wrapup here so that the state gets set to idle.
                // This makes it difficult to test the Exit actor.
                try {
                    long startTime = (new Date()).getTime();
                    manager.wrapup();
                    _printTimeAndMemory(startTime,
                            "StaticSchedulingCodeGenerator: "
                                    + "wrapup consumed: ");
                } catch (RuntimeException ex) {
                    // The Exit actor causes Manager.wrapup() to throw this.
                    if (!manager.isExitingAfterWrapup()) {
                        throw ex;
                    }
                }
            }
            // If the container is not in the top level, we are generating code
View Full Code Here

        if (result) {
            Nameable container = getContainer();

            if (container instanceof CompositeActor) {
                Manager manager = ((CompositeActor) container).getManager();

                if (manager != null) {
                    manager.finish();
                } else {
                    throw new IllegalActionException(this,
                            "Cannot stop without a Manager.");
                }
            } else {
View Full Code Here

        // has problems finding resources like files specified in
        // parameters if the xml file was specified as an absolute path.
        CompositeActor toplevel = (CompositeActor) parser.parse(null, new File(
                xmlFileName).toURI().toURL());

        _manager = new Manager(toplevel.workspace(), "MoMLSimpleApplication");
        toplevel.setManager(_manager);
        toplevel.addChangeListener(this);
        _manager.addExecutionListener(this);
        _manager.execute();
View Full Code Here

            if (model instanceof CompositeActor) {
                CompositeActor actor = (CompositeActor) model;

                // Create a manager if necessary.
                Manager manager = actor.getManager();

                if (manager == null) {
                    manager = new Manager(actor.workspace(), "manager");
                    actor.setManager(manager);
                }

                manager.addExecutionListener(this);
                _activeCount++;

                // Run the model in a new thread.
                manager.startRun();
            }
        }
    }
View Full Code Here

                TypedCompositeActor model = (TypedCompositeActor) GiottoCodeGenerator.this
                        .getContainer();

                // Preinitialize and resolve types.
                CompositeActor toplevel = (CompositeActor) model.toplevel();
                Manager manager = toplevel.getManager();

                if (manager == null) {
                    manager = new Manager(toplevel.workspace(), "manager");
                    toplevel.setManager(manager);
                }

                manager.preinitializeAndResolveTypes();

                TextEffigy codeEffigy = TextEffigy.newTextEffigy(configuration
                        .getDirectory(), generateGiottoCode(model));
                codeEffigy.setModified(true);
                configuration.createPrimaryTableau(codeEffigy);

                // end the model execution.
                manager.stop();
                manager.wrapup();
            } catch (Exception ex) {
                throw new InternalErrorException(object, ex,
                        "Cannot generate code. Perhaps outside Vergil?");
            }
        }
View Full Code Here

                        // wait for the user to press the Resume
                        // button.
                        if (debugProfile.isListening(event.getType())) {
                            String message = objToHighlight.getName() + " "
                                    + event.getType().getName();
                            Manager manager = ((Actor) objToHighlight)
                                    .getManager();
                            render(figure, manager, message);
                        }
                    }
                }
View Full Code Here

            NameDuplicationException {
        // Create the model.
        super(workspace);
        setName("LorenzSystem");

        Manager manager = new Manager(workspace, "Manager");
        setManager(manager);

        // Set up the top level composite actor, director and manager
        CTMultiSolverDirector director = new CTMultiSolverDirector(this,
                "CTMultiSolverDirector");
View Full Code Here

        CompositeActor container = (CompositeActor) getContainer();

        _requestFinishOnReceivers();

        // Now wake up threads that depend on the manager.
        Manager manager = container.getManager();

        // NOTE: Used to do the notification in a new thread.
        // For some reason, however, this isn't sufficient.
        // Have to click the stop button twice.
        // (new NotifyThread(manager)).start();
        synchronized (manager) {
            manager.notifyAll();
        }

        // Wait until all threads stop.
        synchronized (this) {
            while (_activeThreads.size() > 0) {
View Full Code Here

            // This might not actually be a top level, because we might
            // be looking inside.  So we check before creating a manager.
            if ((_toplevel.getContainer() == null)
                    && _toplevel instanceof CompositeActor) {
                if (((CompositeActor) _toplevel).getManager() == null) {
                    _manager = new Manager(_workspace, "manager");
                    _manager.addExecutionListener(this);
                    ((CompositeActor) _toplevel).setManager(_manager);
                } else {
                    _manager = ((CompositeActor) _toplevel).getManager();
                }
View Full Code Here

TOP

Related Classes of ptolemy.actor.Manager

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.