MCPcopy Create free account
hub / github.com/IENT/YUView / resolveLibraryFunctionPointers

Method resolveLibraryFunctionPointers

YUViewLib/src/decoder/decoderVTM.cpp:138–189  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

136}
137
138void decoderVTM::resolveLibraryFunctionPointers()
139{
140 // Get/check function pointers
141 if (!resolve(this->lib.libVTMDec_get_version, "libVTMDec_get_version"))
142 return;
143 if (!resolve(this->lib.libVTMDec_new_decoder, "libVTMDec_new_decoder"))
144 return;
145 if (!resolve(this->lib.libVTMDec_free_decoder, "libVTMDec_free_decoder"))
146 return;
147 if (!resolve(this->lib.libVTMDec_set_SEI_Check, "libVTMDec_set_SEI_Check"))
148 return;
149 if (!resolve(this->lib.libVTMDec_set_max_temporal_layer, "libVTMDec_set_max_temporal_layer"))
150 return;
151 if (!resolve(this->lib.libVTMDec_push_nal_unit, "libVTMDec_push_nal_unit"))
152 return;
153
154 if (!resolve(this->lib.libVTMDec_get_picture, "libVTMDec_get_picture"))
155 return;
156 if (!resolve(this->lib.libVTMDec_get_POC, "libVTMDec_get_POC"))
157 return;
158 if (!resolve(this->lib.libVTMDec_get_picture_width, "libVTMDec_get_picture_width"))
159 return;
160 if (!resolve(this->lib.libVTMDec_get_picture_height, "libVTMDec_get_picture_height"))
161 return;
162 if (!resolve(this->lib.libVTMDec_get_picture_stride, "libVTMDec_get_picture_stride"))
163 return;
164 if (!resolve(this->lib.libVTMDec_get_image_plane, "libVTMDec_get_image_plane"))
165 return;
166 if (!resolve(this->lib.libVTMDec_get_chroma_format, "libVTMDec_get_chroma_format"))
167 return;
168 if (!resolve(this->lib.libVTMDec_get_internal_bit_depth, "libVTMDec_get_internal_bit_depth"))
169 return;
170
171 /*if (!resolve(libVTMDec_get_internal_type_number, "libVTMDec_get_internal_type_number")) return;
172 if (!resolve(libVTMDec_get_internal_type_name, "libVTMDec_get_internal_type_name")) return;*/
173 /*if (!resolve(libVTMDec_get_internal_type, "libVTMDec_get_internal_type")) return;
174 if (!resolve(libVTMDec_get_internal_type_max, "libVTMDec_get_internal_type_max")) return;
175 if (!resolve(libVTMDec_get_internal_type_vector_scaling,
176 "libVTMDec_get_internal_type_vector_scaling")) return; if
177 (!resolve(libVTMDec_get_internal_type_description, "libVTMDec_get_internal_type_description"))
178 return; if (!resolve(libVTMDec_get_internal_info, "libVTMDec_get_internal_info")) return; if
179 (!resolve(libVTMDec_clear_internal_info, "libVTMDec_clear_internal_info")) return;*/
180
181 // All interbals functions were successfully retrieved
182 internalsSupported = true;
183
184 return;
185
186 // TODO: could we somehow get the prediction/residual signal?
187 // I don't think this is possible without changes to the reference decoder.
188 DEBUG_DECVTM("decoderVTM::loadDecoderLibrary - prediction/residual internals found");
189}
190
191template <typename T> T decoderVTM::resolve(T &fun, const char *symbol, bool optional)
192{

Callers 1

checkLibraryFileMethod · 0.45

Calls

no outgoing calls

Tested by

no test coverage detected