Package ptolemy.kernel

Examples of ptolemy.kernel.CompositeEntity


                // If the above code did not find an effigy to put
                // the new effigy within, then put it into the
                // directory directly.
                if (!isContainerSet) {
                    CompositeEntity directory = getDirectory();
                    effigy.setName(directory.uniqueName(entity.getName()));
                    effigy.setContainer(directory);
                    effigy.identifier.setExpression(entity.getFullName());
                }

                return createPrimaryTableau(effigy);
View Full Code Here


            if (matchInput.getWidth() > 0 && matchInput.hasToken(0)
                    && _lastModel != null) {
                ObjectToken token = (ObjectToken) matchInput.get(0);
                MatchResult match = (MatchResult) token.getValue();
                if (match != null) {
                    CompositeEntity host = (CompositeEntity) match
                            .get(getPattern());
                    if (_lastModel != host && !_lastModel.deepContains(host)) {
                        throw new IllegalActionException(this,
                                "The match result cannot be used with the "
                                        + "current model.");
View Full Code Here

                            + "<" + objectType + " name=\"" + object.getName()
                            + "\" class=\"" + deferredClass + "\"/>\n"
                            + "</entity>";
                    _reflectionParser.reset();

                    CompositeEntity toplevel;

                    try {
                        toplevel = (CompositeEntity) _reflectionParser
                                .parse(source);
                    } catch (InternalError ex) {
                        // parsing lib/hoc/test/auto/MobileModelTest.xml
                        // resulted in trying to expand vergil.icon.EditorIcon
                        StringBuffer results = new StringBuffer("");

                        try {
                            int i = 0;

                            for (Iterator momlFilters = MoMLParser
                                    .getMoMLFilters().iterator(); momlFilters
                                    .hasNext();) {
                                MoMLFilter momlFilter = (MoMLFilter) momlFilters
                                        .next();
                                results.append("\nFilter " + (++i) + "\n"
                                        + momlFilter.toString());
                            }
                        } catch (Exception ex2) {
                            results.append(KernelException
                                    .stackTraceToString(ex2));
                        }

                        throw new InternalErrorException(null, ex,
                                "Failed to parse \"" + source
                                        + "\", filters:\n" + results.toString());
                    } catch (Exception ex) {
                        throw new InternalErrorException(null, ex, "Attempt "
                                + "to create an instance of " + deferredClass
                                + " failed because "
                                + "it does not have a Workspace "
                                + "constructor.");
                    }

                    if (object instanceof Attribute) {
                        deferredObject = toplevel
                                .getAttribute(object.getName());
                    } else if (object instanceof Port) {
                        deferredObject = toplevel.getPort(object.getName());
                    } else {
                        deferredObject = toplevel.getEntity(object.getName());
                    }

                    //  System.out.println("class without workspace = " +
                    //   deferredClass);
                }
View Full Code Here

            System.out.println("creating " + name);
            set.add(name);
        }

        if (object instanceof CompositeEntity) {
            CompositeEntity composite = (CompositeEntity) object;

            for (Iterator entities = composite.entityList().iterator(); entities
                    .hasNext();) {
                Entity entity = (Entity) entities.next();
                _updateCreatedSet(prefix, context, entity, set);
            }

            for (Iterator relations = composite.relationList().iterator(); relations
                    .hasNext();) {
                Relation relation = (Relation) relations.next();
                _updateCreatedSet(prefix, context, relation, set);
            }
        }
View Full Code Here

            NamedObj container = getPtolemyModel();

            moml.append(_deleteRelation(container, linkRelation));

            // See whether refinement(s) need to be removed.
            CompositeEntity master = (CompositeEntity) linkRelation
                    .getContainer();

            // Nothing to do if there is no container.
            if (master != null) {
                // Remove any referenced refinements that are not also
                // referenced by other states.
                TypedActor[] refinements = null;

                try {
                    refinements = ((Transition) linkRelation).getRefinement();
                } catch (IllegalActionException e) {
                    // Ignore, no refinement to remove.
                }

                if (refinements != null) {
                    for (int i = 0; i < refinements.length; i++) {
                        TypedActor refinement = refinements[i];

                        // By default, if no other state or transition refers
                        // to this refinement, then we will remove it.
                        boolean removeIt = true;
                        Iterator states = master.entityList(State.class)
                                .iterator();

                        while (removeIt && states.hasNext()) {
                            State state = (State) states.next();
                            TypedActor[] stateRefinements = null;

                            try {
                                stateRefinements = state.getRefinement();
                            } catch (IllegalActionException e1) {
                                // Ignore, no refinement to check.
                            }

                            if (stateRefinements == null) {
                                continue;
                            }

                            for (int j = 0; j < stateRefinements.length; j++) {
                                if (stateRefinements[j] == refinement) {
                                    removeIt = false;
                                    break;
                                }
                            }
                        }

                        // Next check transitions.
                        Iterator transitions = master.relationList().iterator();

                        while (removeIt && transitions.hasNext()) {
                            Relation transition = (Relation) transitions.next();

                            if ((transition == linkRelation)
View Full Code Here

                }
            }
        }

        if (actor instanceof CompositeEntity && !(actor instanceof FSMActor)) {
            CompositeEntity model = (CompositeEntity) actor;

            // Loop over all the entity classes and replace getAttribute calls.
            for (Iterator i = model.deepEntityList().iterator(); i.hasNext();) {
                ComponentEntity entity = (ComponentEntity) i.next();
                String className = ModelTransformer.getInstanceClassName(
                        entity, _options);
                SootClass entityClass = Scene.v()
                        .loadClassAndSupport(className);
View Full Code Here

        // Loop over all the actor instance classes and get
        // fields for ports.
        if (actor instanceof CompositeEntity && !(actor instanceof FSMActor)) {
            // Then recurse
            CompositeEntity model = (CompositeEntity) actor;

            for (Iterator i = model.deepEntityList().iterator(); i.hasNext();) {
                ComponentEntity entity = (ComponentEntity) i.next();
                String className = ModelTransformer.getInstanceClassName(
                        entity, _options);
                SootClass entityClass = Scene.v()
                        .loadClassAndSupport(className);
View Full Code Here

        contentPane.add(Box.createRigidArea(verticalSpace));
        contentPane.add(descriptionPanel);
        descriptionPanel.add(Box.createRigidArea(horizontalSpace));
        // Construct a blank composite actor into which to put
        // an instance of the actor.
        _iconContainer = new CompositeEntity();
        final ActorEditorGraphController controller = new ActorEditorGraphController();
        controller.setConfiguration(getConfiguration());
        // Create a modified graph model with alternative error reporting.
        ActorGraphModel graphModel = new ActorGraphModel(_iconContainer) {
            /** Override the base class to give a useful message.
View Full Code Here

    }

    private String _getMoML(NamedObj host) throws TransformationException {
        if (host instanceof CompositeEntity) {
            try {
                CompositeEntity clone = (CompositeEntity) host.clone();
                clone.removeAllEntities();
                clone.removeAllRelations();
                return clone.exportMoMLPlain();
            } catch (CloneNotSupportedException e) {
                throw new TransformationException(
                        "Cannot clone composite entity " + host.getFullName()
                                + ".", e);
            }
View Full Code Here

    }

    private Set<NamedObj> _removeObject(NamedObj object, boolean shallowRemoval)
            throws TransformationException {
        if (shallowRemoval && object instanceof CompositeEntity) {
            CompositeEntity entity = (CompositeEntity) object;
            CompositeEntity container = (CompositeEntity) entity.getContainer();
            TwoWayHashMap<NamedObj, NamedObj> entityMap = new TwoWayHashMap<NamedObj, NamedObj>();

            // Record the object codes in a temporary map.
            Collection<?> preservedChildren = GTTools.getChildren(entity,
                    false, false, true, true);
View Full Code Here

TOP

Related Classes of ptolemy.kernel.CompositeEntity

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.