Exemplo n.º 1
0
        public void LoadSharedData(ARSharedData sharedData)
        {
            NDKARStatus status = NDKAPI.HwArSession_load(m_ndkSession.SessionHandle, sharedData.RawData.m_pinAddr,
                                                         sharedData.RawData.DataSize);

            ARExceptionAdapter.ExtractException(status);
        }
Exemplo n.º 2
0
        public void DeSerializeAnchors(ARSharedData sharedData, List <ARAnchor> anchors)
        {
            IntPtr      anchorListHandle = m_ndkSession.AnchorAdapter.CreateList();
            NDKARStatus status           = NDKAPI.HwArSession_deserializeAnchors(m_ndkSession.SessionHandle,
                                                                                 sharedData.RawData.m_pinAddr, sharedData.RawData.DataSize, anchorListHandle);

            ARExceptionAdapter.ExtractException(status);
            int anchorListSize = m_ndkSession.AnchorAdapter.GetListSize(anchorListHandle);

            for (int i = 0; i < anchorListSize; i++)
            {
                IntPtr   anchorHandle = m_ndkSession.AnchorAdapter.AcquireListItem(anchorListHandle, i);
                ARAnchor anchor       = m_ndkSession.AnchorManager.ARAnchorFactory(anchorHandle, true);
                anchors.Add(anchor);
            }
            m_ndkSession.AnchorAdapter.DestroyList(anchorListHandle);
        }