/// <summary>
        /// Populates m_datastores.
        /// </summary>
        private void GetAllExistingDatastore()
        {
            m_datastores.Clear();
            for (int i = 0; i < m_typesByName.Count; i++)
            {
                m_datastores.Add(new List <BaseDatastore>());
            }

            string[] assets = AssetDatabase.FindAssets("t:BaseDatastore", null);
            for (int i = 0; i < assets.Length; i++)
            {
                string        path      = AssetDatabase.GUIDToAssetPath(assets[i]);
                BaseDatastore datastore = AssetDatabase.LoadAssetAtPath <BaseDatastore>(path);
                int           index     = m_typesByName.FindIndex(x => x == datastore.GetType().Name.ToString());
                m_datastores[index].Add(datastore);
            }
        }