+/*
+ * Storage search options
+ */
+struct store_opts_t {
+ bool PreferMountedVols;
+ bool exact_match;
+ bool autochanger_only;
+ bool try_low_use_drive;
+ bool any_drive;
+};
+
+/* *** Old pre-8.8 algorithm *** not used here
+ * jcr->PreferMountedVols = true
+ * MntVol exact chgonly lowuse any
+ * 1 * {true, true, false, false, false},
+ * 2 * {true, false, true, false, false},
+ * 3 * {true, false, true, false, true},
+
+ * jcr->PreferMountedVols = false
+ * MntVol exact chgonly lowuse any
+ * 4 * {false, false, true, false, false},
+ * 5 * {false, false, true, true, false}, * low instantaneous use *
+ * 6 * {false, false, false, true, false},
+ * 7 * {true, true, false, false, false},
+ * 8 * {true, false, true, false, false},
+ * 9 * {true, false, true, false, true}
+ *** End old pre-8.8 algorithm ***
+ */
+
+store_opts_t store_opts[] = {
+/* jcr->PreferMountedVols = true */
+/* MntVol exact chgonly lowuse any */
+/* 1 */ {true, true, false, true, false}, /* low global use */
+/* 2 */ {true, false, true, true, false},
+/* 3 */ {true, false, true, false, true},
+/* 4 */ {true, true, false, true, false},
+/* 5 */ {false, true, false, false, false},
+/* 6 */ {false, false, false, false, false},
+/* 7 */ {true, false, false, false, true},
+
+/* jcr->PreferMountedVols = false */
+/* MntVol exact chgonly lowuse any */
+/* 8 */ {false, false, true, true, false},
+/* 9 */ {false, false, true, false, false},
+/* 10 */ {false, false, false, true, false},
+/* 11 */ {true, true, false, true, true},
+/* 12 */ {true, false, true, true, false},
+/* 13 */ {true, false, true, false, true}
+};
+
+static void set_options(RCTX &rctx, int num)
+{
+ rctx.PreferMountedVols = store_opts[num-1].PreferMountedVols;
+ rctx.exact_match = store_opts[num-1].exact_match;
+ rctx.autochanger_only = store_opts[num-1].autochanger_only;
+ rctx.try_low_use_drive = store_opts[num-1].try_low_use_drive;
+ rctx.any_drive = store_opts[num-1].any_drive;
+ rctx.low_use_drive = NULL;
+}
+
+static void prt_options(RCTX &rctx, int num)
+{
+ Dmsg6(dbglvl, "Inx=%d mntVol=%d exact=%d chgonly=%d low_use=%d any=%d\n",
+ num, rctx.PreferMountedVols, rctx.exact_match, rctx.autochanger_only,
+ rctx.try_low_use_drive, rctx.any_drive);
+}
+
+
+