import {ProcessLoadable} from './ProcessLoadable';
import {ProcessLoader} from './ProcessLoader';
//==========================================================
// 材质。
//
// @author maocy
// @history 160323
//==========================================================
export class ProcessLoadHook extends ProcessLoader implements ProcessLoadable {
// 拥有着
public owner: any;
//==========================================================
// 构造处理。
//
// @param owner 拥有着
//==========================================================
public constructor(owner?: any) {
super();
// 设置属性
this.owner = owner;
}
//==========================================================
// 测试是否准备好。
//
// @param 是否准备好
//==========================================================
public testReady(): boolean {
var owner = this.owner;
if (owner.testReady) {
return owner.testReady();
}
return super.testReady();
}
//==========================================================
// 处理加载开始。
//
// @param 处理结果
//==========================================================
public processLoadBegin(): boolean {
var owner = this.owner;
if (owner.processLoadBegin) {
return owner.processLoadBegin();
}
return super.processLoadBegin();
}
//==========================================================
// 处理加载
//
// @param 处理结果
//==========================================================
public processLoad(): boolean {
var owner = this.owner;
if (owner.processLoad) {
return owner.processLoad();
}
return super.processLoad();
}
//==========================================================
// 处理加载结束。
//
// @param 处理结果
//==========================================================
public processLoadEnd(): boolean {
var owner = this.owner;
if (owner.processLoadEnd) {
return owner.processLoadEnd();
}
return super.processLoadEnd();
}
//==========================================================
// 释放当前实例。
//==========================================================
public dispose(): void {
this.owner = null;
// 父处理
super.dispose();
}
}