unit uengShaderCodeGenerator; {$mode objfpc}{$H+} {$I uengShaderFile.inc} interface uses Classes, SysUtils, uengShaderFileParser, uengShaderPart, uengShaderPartScope, uengShaderPartKeyValuePair; type //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// TengShaderCodeGenerator = class(TengShaderPartScope) { General } private fProperties: TengShaderPartPropertyMap; protected fInherited: TengShaderPartList; procedure UpdateInherited; virtual; procedure UpdateCache; override; public constructor Create(const aParent: TengShaderPart); override; destructor Destroy; override; end; implementation //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //TengShaderCodeGenerator/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure TengShaderCodeGenerator.UpdateInherited; begin // DUMMY end; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// procedure TengShaderCodeGenerator.UpdateCache; begin inherited UpdateCache; UpdateInherited; end; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// constructor TengShaderCodeGenerator.Create(const aParent: TengShaderPart); begin inherited Create(aParent); fInherited := TengShaderPartList.Create(false); end; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// destructor TengShaderCodeGenerator.Destroy; begin FreeAndNil(fInherited); inherited Destroy; end; end.