#pragma once

//#ifndef __LIGHT_H
//#define __LIGHT_H

#ifdef __WATCOMC__
#pragma library("objects.lib")
#endif

#ifdef __cplusplus
extern "C" {
#endif
//---------------------------------------------------------------------------//
#include "misc/col.h"

typedef struct s_VLGH VLGH;
typedef enum
{
  VLGHFLAG_OMNI = 1 << 0,
  VLGHFLAG_SPOT = 1 << 1,
  VLGHFLAG_EXACT = 1 << 2,
  VLGHFLAG_DISTANCE = 1 << 3
} VLGHFLAGS;

struct s_VLGH
{
  VLGHFLAGS flags;
  RGB color;        // Light source color.. only in 24 bit colormodes
  float in_range,out_range;
  float hotspot,falloff;    // Hotspot radius, falloff radius;
  float *spot_intens;
  float intens;   // Intensity of light...
};

//---------------------------------------------------------------------------//
// Functions

VLGH *vlgh_createstd (void);
VLGH *vlgh_create (void);
//---------------------------------------------------------------------------//
#ifdef __cplusplus
}
#endif
//#endif
