|  | 
|  | MetalProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual, ManualResourceLoader *loader, MetalDevice *device) | 
|  | 
|  | ~MetalProgram () override | 
|  | 
| void | analyzeComputeParameters () | 
|  | 
| void | analyzeParameterBuffer (MTLArgument *arg) | 
|  | 
| void | analyzeRenderParameters () | 
|  | 
| bool | compile (const bool checkErrors=false) | 
|  | Compile source into shader object. 
 | 
|  | 
| GpuProgramParametersSharedPtr | createParameters () override | 
|  | Overridden from GpuProgram. 
 | 
|  | 
| uint32 | getBufferRequiredSize () const | 
|  | In bytes. 
 | 
|  | 
| const String & | getEntryPoint () const | 
|  | Gets the entry point defined for this program. 
 | 
|  | 
| const String & | getLanguage () const override | 
|  | Overridden from GpuProgram. 
 | 
|  | 
| id< MTLFunction > | getMetalFunction () const | 
|  | Retrieve the Metal function object. 
 | 
|  | 
| bool | getPassFogStates () const override | 
|  | Returns whether a fragment program wants fog state to be passed through fixed pipeline low level API rendering calls (default true, subclasses can override) 
 | 
|  | 
| bool | getPassSurfaceAndLightStates () const override | 
|  | Returns whether a vertex program wants light and material states to be passed through fixed pipeline low level API rendering calls (default false, subclasses can override) 
 | 
|  | 
| bool | getPassTransformStates () const override | 
|  | Overridden. 
 | 
|  | 
| const String & | getPreprocessorDefines () const | 
|  | Sets the preprocessor defines use to compile the program. 
 | 
|  | 
| const String & | getShaderReflectionPairHint () const | 
|  | Gets the paired shader. See setShaderReflectionPairHint. 
 | 
|  | 
| void | setEntryPoint (const String &entryPoint) | 
|  | Sets the entry point for this program ie the first method called. 
 | 
|  | 
| void | setPreprocessorDefines (const String &defines) | 
|  | Sets the preprocessor defines use to compile the program. 
 | 
|  | 
| void | setShaderReflectionPairHint (const String &shaderName) | 
|  | If this shader is a pixel shader, sets a vertex shader that can be paired with us for properly getting reflection data for GPU program parameters. 
 | 
|  | 
| void | updateBuffers (const GpuProgramParametersSharedPtr ¶ms, uint8 *RESTRICT_ALIAS dstData) | 
|  | dstData must be able to hold at least getBufferRequiredSize 
 | 
|  | 
|  | HighLevelGpuProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) | 
|  | Constructor, should be used only by factory classes. 
 | 
|  | 
|  | ~HighLevelGpuProgram () override | 
|  | 
| GpuProgram * | _getBindingDelegate () override | 
|  | Returns the GpuProgram which should be bound to the pipeline. 
 | 
|  | 
| size_t | calculateSize () const override | 
|  | Calculate the size of a resource; this will only be called after 'load'. 
 | 
|  | 
| const GpuNamedConstants & | getConstantDefinitions () const override | 
|  | Get the full list of GpuConstantDefinition instances. 
 | 
|  | 
| bool | getEnableIncludeHeader () const | 
|  | 
| bool | getUseHlmsParser () const | 
|  | 
| void | setEnableIncludeHeader (bool bEnable) | 
|  | Whether we should parse the source code looking for include files and embedding the file. 
 | 
|  | 
| void | setUseHlmsParser (bool bUse) | 
|  | Whether we should run the shader through the Hlms parser. 
 | 
|  | 
|  | GpuProgram (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) | 
|  | 
|  | ~GpuProgram () override | 
|  | 
| bool | getBuildParametersFromReflection () const | 
|  | 
| virtual Vector3 | getComputeGroupDimensions () const | 
|  | Returns the number of process groups dispatched by this compute program. 
 | 
|  | 
| virtual GpuProgramParametersSharedPtr | getDefaultParameters () | 
|  | Get a reference to the default parameters which are to be used for all uses of this program. 
 | 
|  | 
| virtual const String & | getManualNamedConstantsFile () const | 
|  | Gets the name of a file from which to load named parameters mapping for a program which would not be able to derive named parameters itself. 
 | 
|  | 
| virtual ushort | getNumberOfPosesIncluded () const | 
|  | Returns the number of simultaneous poses the vertex program can blend, for use in pose animation. 
 | 
|  | 
| uint8 | getNumClipDistances () const | 
|  | Retrieves the number of clip distances. See GpuProgram::setNumClipDistances. 
 | 
|  | 
| virtual const String & | getSource () const | 
|  | Gets the assembler source for this program. 
 | 
|  | 
| virtual const String & | getSourceFile () const | 
|  | Gets the name of the file used as source for this program. 
 | 
|  | 
| virtual const String & | getSyntaxCode () const | 
|  | Gets the syntax code for this program e.g. 
 | 
|  | 
| virtual GpuProgramType | getType () const | 
|  | Get the program type. 
 | 
|  | 
| virtual bool | hasCompileError () const | 
|  | Did this program encounter a compile error when loading? 
 | 
|  | 
| virtual bool | hasDefaultParameters () const | 
|  | Returns true if default parameters have been set up. 
 | 
|  | 
| virtual bool | isAdjacencyInfoRequired () const | 
|  | Returns whether this geometry program requires adjacency information from the input primitives. 
 | 
|  | 
| virtual bool | isMorphAnimationIncluded () const | 
|  | Returns whether a vertex program includes the required instructions to perform morph animation. 
 | 
|  | 
| virtual bool | isPoseAnimationIncluded () const | 
|  | Returns whether a vertex program includes the required instructions to perform pose animation. 
 | 
|  | 
| virtual bool | isSkeletalAnimationIncluded () const | 
|  | Returns whether a vertex program includes the required instructions to perform skeletal animation. 
 | 
|  | 
| virtual bool | isSupported () const | 
|  | Returns whether this program can be supported on the current renderer and hardware. 
 | 
|  | 
| virtual bool | isVertexTextureFetchRequired () const | 
|  | Returns whether this vertex program requires support for vertex texture fetch from the hardware. 
 | 
|  | 
| virtual bool | isVpAndRtArrayIndexFromAnyShaderRequired () const | 
|  | Returns whether this program requires support for choosing viewport or render target index in any program or only geometry one. 
 | 
|  | 
| virtual void | resetCompileError () | 
|  | Reset a compile error if it occurred, allowing the load to be retried. 
 | 
|  | 
| virtual void | setAdjacencyInfoRequired (bool r) | 
|  | Sets whether this geometry program requires adjacency information from the input primitives. 
 | 
|  | 
| virtual void | setAutoReflectArrayBindingsInRootLayout (bool bReflectArrayRootLayouts) | 
|  | Set to true to reflects the shader looking for array bindings (e.g. 
 | 
|  | 
| void | setBuildParametersFromReflection (bool buildParams) | 
|  | 
| virtual void | setComputeGroupDimensions (Vector3 dimensions) | 
|  | Sets the number of process groups dispatched by this compute program. 
 | 
|  | 
| virtual void | setManualNamedConstants (const GpuNamedConstants &namedConstants) | 
|  | Allows you to manually provide a set of named parameter mappings to a program which would not be able to derive named parameters itself. 
 | 
|  | 
| virtual void | setManualNamedConstantsFile (const String ¶mDefFile) | 
|  | Specifies the name of a file from which to load named parameters mapping for a program which would not be able to derive named parameters itself. 
 | 
|  | 
| virtual void | setMorphAnimationIncluded (bool included) | 
|  | Sets whether a vertex program includes the required instructions to perform morph animation. 
 | 
|  | 
| void | setNumClipDistances (const uint8 numClipDistances) | 
|  | Sets the number of clip distances this shader uses. 
 | 
|  | 
| virtual void | setPoseAnimationIncluded (ushort poseCount) | 
|  | Sets whether a vertex program includes the required instructions to perform pose animation. 
 | 
|  | 
| void | setPrefabRootLayout (const PrefabRootLayout::PrefabRootLayout &prefab) | 
|  | Sets a prefab root layout, mostly meant for low level materials (e.g. 
 | 
|  | 
| virtual void | setReplaceVersionMacro (bool bReplace) | 
|  | When true: 
 | 
|  | 
| virtual void | setRootLayout (GpuProgramType t, const RootLayout &rootLayout) | 
|  | Sets a RootLayout programmatically, thus the shader source won't be parsed looking for one We will call validate() 
 | 
|  | 
| virtual void | setSkeletalAnimationIncluded (bool included) | 
|  | Sets whether a vertex program includes the required instructions to perform skeletal animation. 
 | 
|  | 
| virtual void | setSource (const String &source) | 
|  | Sets the source assembly for this program from an in-memory string. 
 | 
|  | 
| virtual void | setSource (const String &source, const String &debugFilename) | 
|  | Sets the source assembly for this program from an in-memory string, while providing a path to a file, which can be needed/useful for debugging shaders (i.e. 
 | 
|  | 
| virtual void | setSourceFile (const String &filename) | 
|  | Sets the filename of the source assembly for this program. 
 | 
|  | 
| virtual void | setSyntaxCode (const String &syntax) | 
|  | Sets the syntax code for this program e.g. 
 | 
|  | 
| virtual void | setType (GpuProgramType t) | 
|  | Set the program type (only valid before load) 
 | 
|  | 
| virtual void | setUniformBlockBinding (const char *blockName, uint32 bindingSlot) | 
|  | For GL only. Program must be bound when calling. 
 | 
|  | 
| virtual void | setVertexTextureFetchRequired (bool r) | 
|  | Sets whether this vertex program requires support for vertex texture fetch from the hardware. 
 | 
|  | 
| virtual void | setVpAndRtArrayIndexFromAnyShaderRequired (bool r) | 
|  | Sets whether this program requires support for choosing viewport or render target index in any program or only geometry one. 
 | 
|  | 
| virtual void | unsetRootLayout () | 
|  | 
|  | Resource (ResourceManager *creator, const String &name, ResourceHandle handle, const String &group, bool isManual=false, ManualResourceLoader *loader=0) | 
|  | Standard constructor. 
 | 
|  | 
| virtual | ~Resource () | 
|  | Virtual destructor. 
 | 
|  | 
| virtual void | _dirtyState () | 
|  | Manually mark the state of this resource as having been changed. 
 | 
|  | 
| virtual void | _fireLoadingComplete (bool wasBackgroundLoaded) | 
|  | Firing of loading complete event. 
 | 
|  | 
| virtual void | _firePreparingComplete (bool wasBackgroundLoaded) | 
|  | Firing of preparing complete event. 
 | 
|  | 
| virtual void | _fireUnloadingComplete () | 
|  | Firing of unloading complete event. 
 | 
|  | 
| virtual void | _notifyOrigin (const String &origin) | 
|  | Notify this resource of it's origin. 
 | 
|  | 
| virtual void | addListener (Listener *lis) | 
|  | Register a listener on this resource. 
 | 
|  | 
| virtual void | changeGroupOwnership (const String &newGroup) | 
|  | Change the resource group ownership of a Resource. 
 | 
|  | 
| virtual void | escalateLoading () | 
|  | Escalates the loading of a background loaded resource. 
 | 
|  | 
| virtual ResourceManager * | getCreator () | 
|  | Gets the manager which created this resource. 
 | 
|  | 
| virtual const String & | getGroup () const | 
|  | Gets the group which this resource is a member of. 
 | 
|  | 
| virtual ResourceHandle | getHandle () const | 
|  | 
| virtual LoadingState | getLoadingState () const | 
|  | Returns the current loading state. 
 | 
|  | 
| virtual const String & | getName () const | 
|  | Gets resource name. 
 | 
|  | 
| virtual const String & | getOrigin () const | 
|  | Get the origin of this resource, e.g. 
 | 
|  | 
| virtual size_t | getSize () const | 
|  | Retrieves info about the size of the resource. 
 | 
|  | 
| virtual size_t | getStateCount () const | 
|  | Returns the number of times this resource has changed state, which generally means the number of times it has been loaded. 
 | 
|  | 
| virtual bool | isBackgroundLoaded () const | 
|  | Returns whether this Resource has been earmarked for background loading. 
 | 
|  | 
| virtual bool | isLoaded () const | 
|  | Returns true if the Resource has been loaded, false otherwise. 
 | 
|  | 
| virtual bool | isLoading () const | 
|  | Returns whether the resource is currently in the process of background loading. 
 | 
|  | 
| virtual bool | isManuallyLoaded () const | 
|  | Is this resource manually loaded? 
 | 
|  | 
| virtual bool | isPrepared () const | 
|  | Returns true if the Resource has been prepared, false otherwise. 
 | 
|  | 
| virtual bool | isReloadable () const | 
|  | Returns true if the Resource is reloadable, false otherwise. 
 | 
|  | 
| virtual void | load (bool backgroundThread=false) | 
|  | Loads the resource, if it is not already. 
 | 
|  | 
| bool | markForReload () | 
|  | 
| virtual void | prepare (bool backgroundThread=false) | 
|  | Prepares the resource for load, if it is not already. 
 | 
|  | 
| virtual void | reload (LoadingFlags flags=LF_DEFAULT) | 
|  | Reloads the resource, if it is already loaded. 
 | 
|  | 
| virtual void | removeListener (Listener *lis) | 
|  | Remove a listener on this resource. 
 | 
|  | 
| virtual void | setBackgroundLoaded (bool bl) | 
|  | Tells the resource whether it is background loaded or not. 
 | 
|  | 
| virtual void | setManuallyLoaded (bool isManual) | 
|  | Set "Is this resource manually loaded?". 
 | 
|  | 
| virtual void | setToLoaded () | 
|  | Change the Resource loading state to loaded. 
 | 
|  | 
| virtual void | touch () | 
|  | 'Touches' the resource to indicate it has been used. 
 | 
|  | 
| virtual void | unload () | 
|  | Unloads the resource; this is not permanent, the resource can be reloaded later if required. 
 | 
|  | 
|  | StringInterface () | 
|  | 
| virtual | ~StringInterface () | 
|  | Virtual destructor, see Effective C++. 
 | 
|  | 
| virtual void | copyParametersTo (StringInterface *dest) const | 
|  | Method for copying this object's parameters to another object. 
 | 
|  | 
| ParamDictionary * | getParamDictionary () | 
|  | Retrieves the parameter dictionary for this class. 
 | 
|  | 
| const ParamDictionary * | getParamDictionary () const | 
|  | 
| virtual String | getParameter (const String &name) const | 
|  | Generic parameter retrieval method. 
 | 
|  | 
| const ParameterList & | getParameters () const | 
|  | Retrieves a list of parameters valid for this object. 
 | 
|  | 
| virtual bool | setParameter (const String &name, const String &value) | 
|  | Generic parameter setting method. 
 | 
|  | 
| virtual void | setParameterList (const NameValuePairList ¶mList) | 
|  | Generic multiple parameter setting method. 
 | 
|  |