import { MathUtils } from '../math/MathUtils';
import { BaseComponent } from './BaseComponent';
const __ = {
private: Symbol('private'),
}
/**
* @class LightAdapterComponent
* The light helper component.
* @memberof THING
* @extends THING.BaseComponent
*/
class LightAdapterComponent extends BaseComponent {
/**
* Auto update light attributes.
*/
constructor() {
super();
this[__.private] = {};
let _private = this[__.private];
_private.enable = true;
}
// #region Private
// #endregion
// #region Overrides
onSelfUpdate(deltaTime) {
return true;
}
onUpdate(deltaTime) {
let _private = this[__.private];
if (!_private.enable) {
return;
}
if (!this.onSelfUpdate(deltaTime)) {
return;
}
}
onRefresh() {
}
// #endregion
refresh() {
this.onRefresh();
}
// #region Accessor
/**
* Enable/Disable.
* @type {Boolean}
*/
get enable() {
let _private = this[__.private];
return _private.enable;
}
set enable(value) {
let _private = this[__.private];
_private.enable = value;
}
// #endregion
}
export { LightAdapterComponent }