Esempio n. 1
0
        /***************************************************/

        public static List <IRequest> Requests(this LogicalOrRequest request)
        {
            if (request == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot query the requests from a null logical or request.");
                return(new List <IRequest>());
            }

            return(request.Requests);
        }
Esempio n. 2
0
        /***************************************************/

        public static IEnumerable <ElementId> ElementIds(this LogicalOrRequest request, UIDocument uIDocument, IEnumerable <ElementId> ids = null)
        {
            HashSet <ElementId> result = new HashSet <ElementId>();

            foreach (IRequest subRequest in request.Requests)
            {
                result.UnionWith(subRequest.IElementIds(uIDocument, ids));
            }

            return(result);
        }
Esempio n. 3
0
        /***************************************************/

        private static void AddRequestByLink(this Dictionary <Document, IRequest> requestsByLinks, IRequest request, Document document)
        {
            if (requestsByLinks.ContainsKey(document))
            {
                IRequest requestByLink = requestsByLinks[document];
                if (requestByLink is LogicalOrFilter)
                {
                    ((LogicalOrRequest)requestByLink).Requests.Add(request);
                }
                else
                {
                    LogicalOrRequest newHead = new LogicalOrRequest();
                    newHead.Requests.Add(requestByLink);
                    newHead.Requests.Add(request);
                    requestsByLinks[document] = newHead;
                }
            }
            else
            {
                requestsByLinks[document] = request;
            }
        }
Esempio n. 4
0
        /***************************************************/

        public static List <IRequest> Requests(this LogicalOrRequest request)
        {
            return(request.Requests);
        }