示例#1
0
 private DynamicManager(DynamicManagerType type)
 {
     this.m_managerType = type;
     this.m_vertexNodes = new List<DLinqQueryNode>();
     this.m_vertexNames = null;
     this.AggregationLevels = 0;
     // default aggregation has 1 level
     if (type == DynamicManagerType.FullAggregator)
     {
         AggregationLevels = 1;
     }
 }
示例#2
0
 internal DynamicManager CreateManager(DynamicManagerType type)
 {
     return new DynamicManager(type, this.m_vertexNodes);
 }
示例#3
0
 /// <summary>
 /// Create a dynamic manager with a single parameter node.
 /// </summary>
 /// <param name="type">Type of manager to create.</param>
 /// <param name="node">Node that the manager depends on.</param>
 internal DynamicManager(DynamicManagerType type, DLinqQueryNode node)
     : this(type)
 {
     this.m_vertexNodes.Add(node);
 }
示例#4
0
 /// <summary>
 /// Create a dynamic manager (a Dryad policy manager) with a list of parameter nodes.
 /// </summary>
 /// <param name="type">Type of dynamic manager to create.</param>
 /// <param name="nodes">Nodes that the manager depends on.</param>
 internal DynamicManager(DynamicManagerType type, List<DLinqQueryNode> nodes)
     : this(type)
 {
     this.m_vertexNodes.AddRange(nodes);
 }
示例#5
0
 internal DynamicManager CreateManager(DynamicManagerType type)
 {
     return(new DynamicManager(type, this.m_vertexNodes));
 }
示例#6
0
 /// <summary>
 /// Create a dynamic manager with a single parameter node.
 /// </summary>
 /// <param name="type">Type of manager to create.</param>
 /// <param name="node">Node that the manager depends on.</param>
 internal DynamicManager(DynamicManagerType type, DryadQueryNode node)
     : this(type)
 {
     this.m_vertexNodes.Add(node);
 }
示例#7
0
 /// <summary>
 /// Create a dynamic manager (a Dryad policy manager) with a list of parameter nodes.
 /// </summary>
 /// <param name="type">Type of dynamic manager to create.</param>
 /// <param name="nodes">Nodes that the manager depends on.</param>
 internal DynamicManager(DynamicManagerType type, List <DryadQueryNode> nodes)
     : this(type)
 {
     this.m_vertexNodes.AddRange(nodes);
 }
示例#8
0
 internal DLinqDynamicNode(DynamicManagerType dmType, DLinqQueryNode node)
     : base(QueryNodeType.Dynamic, node.QueryGen, node.QueryExpression)
 {
     switch (dmType)
     {
         case DynamicManagerType.FullAggregator:
         case DynamicManagerType.Broadcast:
         {
             this.m_dmType = dmType;
             this.m_realNodes = new List<DLinqQueryNode>(1);
             this.m_realNodes.Add(node);
             break;
         }
         default:
         {
             throw new DryadLinqException(DryadLinqErrorCode.Internal,
                                          SR.IllegalDynamicManagerType);
         }
     }
 }