/* Release Version: irci_stable_candrpv_0415_20150521_0458 */
/*
 * Support for Intel Camera Imaging ISP subsystem.
 * Copyright (c) 2015, Intel Corporation.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 */

#ifndef _IA_CSS_H_
#define _IA_CSS_H_

/** @file
 * This file is the starting point of the CSS-API. It includes all CSS-API
 * header files.
 */

#include "ia_css_3a.h"
#include "ia_css_acc_types.h"
#include "ia_css_buffer.h"
#include "ia_css_control.h"
#include "ia_css_device_access.h"
#include "ia_css_dvs.h"
#include "ia_css_env.h"
#include "ia_css_err.h"
#include "ia_css_event_public.h"
#include "ia_css_firmware.h"
#include "ia_css_frame_public.h"
#include "ia_css_input_port.h"
#include "ia_css_irq.h"
#include "ia_css_metadata.h"
#include "ia_css_mipi.h"
#include "ia_css_pipe_public.h"
#include "ia_css_prbs.h"
#include "ia_css_properties.h"
#include "ia_css_stream_format.h"
#include "ia_css_stream_public.h"
#include "ia_css_tpg.h"
#include "ia_css_version.h"
#include "ia_css_mmu.h"
#include "ia_css_morph.h"
#include "ia_css_shading.h"
#include "ia_css_timer.h"

/*
   Please do not add code to this file. Public functionality is to be
   exposed in a function/data type specific header file.
   Please add to the appropriate header file or create a new one.
 */

#endif /* _IA_CSS_H_ */
