コード例 #1
0
            public RecordEnumerator(HpcVertexReader <T> reader)
            {
                this.m_vertexReader = reader;
                this.m_nextPortIdx  = 0;
                UInt32 curPortIdx = this.GetNextPortIdx();

                this.m_curReader = this.m_vertexReader.m_readers[curPortIdx];
                this.m_current   = default(T);
            }
コード例 #2
0
        public HpcVertexReader(HpcLinqVertexEnv denv, HpcLinqFactory <T> readerFactory, UInt32 portNum)
        {
            this.m_dvertexEnv     = denv;
            this.m_nativeHandle   = denv.NativeHandle;
            this.m_readerFactory  = readerFactory;
            this.m_startPort      = portNum;
            this.m_numberOfInputs = 1;
            this.m_portPermArray  = new UInt32[] { 0 };
            HpcRecordReader <T> reader = readerFactory.MakeReader(this.m_nativeHandle, portNum);

            this.m_readers = new HpcRecordReader <T>[] { reader };
            this.m_isUsed  = false;
        }
コード例 #3
0
            public bool MoveNext()
            {
                while (true)
                {
                    if (this.m_curReader.ReadRecordSync(ref this.m_current))
                    {
                        return(true);
                    }
                    if (this.m_nextPortIdx >= this.m_vertexReader.m_readers.Length)
                    {
                        return(false);
                    }

                    UInt32 curPortNum = this.GetNextPortIdx();
                    this.m_curReader = this.m_vertexReader.m_readers[curPortNum];
                }
            }
コード例 #4
0
 public RecordEnumerator(HpcRecordReader <T> reader)
 {
     this.m_reader  = reader;
     this.m_current = default(T);
 }