public void OnMarkerLost(MarkerInfo marker)
        {
            previous_marker_id      = "";
            previous_marker_pattern = -1;
            foreach (MarkerObject m in _markerObjects)
            {
                if (m.markerId == marker.getId() && m.markerARLogoPattern == marker.getARLogoCode())
                {
                    m.OnMarkerLost();
                    return;
                }
            }

            foreach (MarkerObject m in _markerObjects)
            {
                if (m.markerId == marker.getId() && m.markerARLogoPattern == -1)
                {
                    m.OnMarkerLost();
                    return;
                }
            }

            if (marker.getDatabase().isCloud() && _cloudMarkerObjectListener != null)
            {
                _cloudMarkerObjectListener.OnCloudMarkerLost(marker);
                return;
            }
        }
        public void OnARLogoFound(MarkerInfo marker, int payload)
        {
            Debug.Log("OnMarkerFound id: " + marker.getId() + " ARLogo:" + marker.getARLogoCode());
            if (previous_marker_id != marker.getId() || previous_marker_pattern != marker.getARLogoCode())
            {
                foreach (MarkerObject m in _markerObjects)
                {
                    if (m.markerId == previous_marker_id && m.markerARLogoPattern == previous_marker_pattern)
                    {
                        m.OnMarkerLost();
                    }
                }
            }

            previous_marker_id      = marker.getId();
            previous_marker_pattern = marker.getARLogoCode();

            foreach (MarkerObject m in _markerObjects)
            {
                if (m.markerId == marker.getId() && m.markerARLogoPattern == marker.getARLogoCode())
                {
                    m.OnMarkerFound();
                    return;
                }
            }

            previous_marker_pattern = -1;
            foreach (MarkerObject m in _markerObjects)
            {
                if (m.markerId == marker.getId() && m.markerARLogoPattern == -1)
                {
                    m.OnMarkerFound();
                    return;
                }
            }

            previous_marker_id = "";

            if (marker.getDatabase().isCloud() && _cloudMarkerObjectListener != null)
            {
                _cloudMarkerObjectListener.OnCloudMarkerFound(marker);
                return;
            }
        }