MCPcopy Create free account
hub / github.com/OpenApoc/OpenApoc / DataImpl

Method DataImpl

framework/data.cpp:109–182  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

107Data *Data::createData(std::vector<UString> paths) { return new DataImpl(paths); }
108
109DataImpl::DataImpl(std::vector<UString> paths) : Data(paths)
110{
111 registeredImageBackends["lodepng"].reset(getLodePNGImageLoaderFactory());
112 registeredImageBackends["pcx"].reset(getPCXImageLoaderFactory());
113 for (auto &imageBackend : registeredImageBackends)
114 {
115 auto t = imageBackend.first;
116 ImageLoader *l = imageBackend.second->create();
117 if (l)
118 {
119 this->imageLoaders.emplace_back(l);
120 LogInfo("Initialised image loader %s", t);
121 }
122 else
123 LogWarning("Failed to load image loader %s", t);
124 }
125
126 registeredImageWriters["lodepng"].reset(getLodePNGImageWriterFactory());
127
128 for (auto &imageWriter : registeredImageWriters)
129 {
130 auto t = imageWriter.first;
131 ImageWriter *l = imageWriter.second->create();
132 if (l)
133 {
134 this->imageWriters.emplace_back(l);
135 LogInfo("Initialised image writer %s", t);
136 }
137 else
138 LogWarning("Failed to load image writer %s", t);
139 }
140
141 registeredSampleLoaders["raw"].reset(getRAWSampleLoaderFactory());
142 registeredSampleLoaders["wav"].reset(getWAVSampleLoaderFactory());
143 for (auto &sampleBackend : registeredSampleLoaders)
144 {
145 auto t = sampleBackend.first;
146 SampleLoader *s = sampleBackend.second->create(*this);
147 if (s)
148 {
149 this->sampleLoaders.emplace_back(s);
150 LogInfo("Initialised sample loader %s", t);
151 }
152 else
153 LogWarning("Failed to load sample loader %s", t);
154 }
155
156 registeredMusicLoaders["raw"].reset(getRAWMusicLoaderFactory());
157 registeredMusicLoaders["vorbis"].reset(getVorbisMusicLoaderFactory());
158 for (auto &musicLoader : registeredMusicLoaders)
159 {
160 auto t = musicLoader.first;
161 MusicLoader *m = musicLoader.second->create(*this);
162 if (m)
163 {
164 this->musicLoaders.emplace_back(m);
165 LogInfo("Initialised music loader %s", t);
166 }

Callers

nothing calls this directly

Calls 12

readAliasesMethod · 0.95
getPCXImageLoaderFactoryFunction · 0.85
getRAWMusicLoaderFactoryFunction · 0.85
pushMethod · 0.80
resetMethod · 0.45
createMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected