godot/thirdparty/basis_universal/encoder/basisu_backend.cpp

// basisu_backend.cpp
// Copyright (C) 2019-2024 Binomial LLC. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//    http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// TODO: This code originally supported full ETC1 and ETC1S, so there's some legacy stuff in here.
//
#include "basisu_backend.h"

#if BASISU_SUPPORT_SSE
#define CPPSPMD_NAME
#include "basisu_kernels_declares.h"
#endif

#define BASISU_FASTER_SELECTOR_REORDERING
#define BASISU_BACKEND_VERIFY(c)

namespace basisu
{
	// TODO
	static inline void verify(bool condition, int line)
	{}

	basisu_backend::basisu_backend()
	{}

	void basisu_backend::clear()
	{}

	void basisu_backend::init(basisu_frontend* pFront_end, basisu_backend_params& params, const basisu_backend_slice_desc_vec& slice_descs)
	{}

	void basisu_backend::create_endpoint_palette()
	{}

	void basisu_backend::create_selector_palette()
	{}

	static const struct
	{} g_endpoint_preds[] =;

	void basisu_backend::reoptimize_and_sort_endpoints_codebook(uint32_t total_block_endpoints_remapped, uint_vec& all_endpoint_indices)
	{}

	void basisu_backend::sort_selector_codebook()
	{}
	int basisu_backend::find_video_frame(int slice_index, int delta)
	{}

	void basisu_backend::check_for_valid_cr_blocks()
	{}

	void basisu_backend::create_encoder_blocks()
	{}

	void basisu_backend::compute_slice_crcs()
	{}

	//uint32_t g_color_delta_hist[255 * 3 + 1];
	//uint32_t g_color_delta_bad_hist[255 * 3 + 1];
		
	// TODO: Split this into multiple methods.
	bool basisu_backend::encode_image()
	{}

	bool basisu_backend::encode_endpoint_palette()
	{}

	bool basisu_backend::encode_selector_palette()
	{}

	uint32_t basisu_backend::encode()
	{}

} // namespace basisu