annotate foosdk/sdk/foobar2000/SDK/noInfo.h @ 1:20d02a178406 default tip

*: check in everything else yay
author Paper <paper@tflc.us>
date Mon, 05 Jan 2026 02:15:46 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
1 #pragma once
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
2
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
3 #include "file_info.h"
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
4
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
5 namespace fb2k {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
6 //! Helper: shared blank file_info object. See: file_info.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
7 class noInfo_t : public file_info {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
8 [[noreturn]] static void verboten() { FB2K_BugCheck(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
9 public:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
10 double get_length() const override { return 0; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
11 replaygain_info get_replaygain() const override { return replaygain_info_invalid; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
12
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
13 t_size meta_get_count() const override { return 0; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
14 const char* meta_enum_name(t_size) const override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
15 t_size meta_enum_value_count(t_size) const override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
16 const char* meta_enum_value(t_size, t_size) const override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
17 t_size meta_find_ex(const char*, t_size) const override { return SIZE_MAX; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
18
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
19 t_size info_get_count() const override { return 0; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
20 const char* info_enum_name(t_size) const override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
21 const char* info_enum_value(t_size) const override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
22 t_size info_find_ex(const char*, t_size) const override { return SIZE_MAX; }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
23
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
24 private:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
25 void set_length(double) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
26 void set_replaygain(const replaygain_info&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
27
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
28 t_size info_set_ex(const char*, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
29 void info_remove_mask(const bit_array&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
30 t_size meta_set_ex(const char*, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
31 void meta_insert_value_ex(t_size, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
32 void meta_remove_mask(const bit_array&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
33 void meta_reorder(const t_size*) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
34 void meta_remove_values(t_size, const bit_array&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
35 void meta_modify_value_ex(t_size, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
36
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
37 void copy(const file_info&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
38 void copy_meta(const file_info&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
39 void copy_info(const file_info&) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
40 t_size meta_set_nocheck_ex(const char*, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
41 t_size info_set_nocheck_ex(const char*, t_size, const char*, t_size) override { verboten(); }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
42
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
43 };
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
44
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
45 extern noInfo_t noInfo;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
46 }