Cg Toolkit Cg 3.1 Toolkit Documentation
Cg / Runtime / Cg / cgCreateProgram

Name

cgCreateProgram - create a program object from a string

Synopsis

#include <Cg/cg.h>

CGprogram cgCreateProgram( CGcontext context,
                           CGenum program_type,
                           const char * program,
                           CGprofile profile,
                           const char * entry,
                           const char ** args );

Parameters

context
The context to which the new program will be added.
program_type
An enumerant describing the contents of the program string. The following enumerants are allowed:
CG_SOURCE
program contains Cg source code.
CG_OBJECT
program contains object code that resulted from the precompilation of some Cg source code.
program
A string containing either the programs source or object code. See program_type for more information.
profile
The profile enumerant for the program.
entry
The entry point to the program in the Cg source. If NULL, the entry point defaults to "main".
args
If args is not NULL it is assumed to be an array of null-terminated strings that will be passed directly to the compiler as arguments. The last value of the array must be a NULL.

Return Values

Returns a CGprogram handle on success.

Returns NULL if an error occurs.

Description

cgCreateProgram generates a new CGprogram object and adds it to the specified Cg context.

Examples

CGcontext context = cgCreateContext();
CGprogram program = cgCreateProgram(context,
                                    CG_SOURCE,
                                    mysourcestring,
                                    CG_PROFILE_ARBVP1,
                                    "myshader",
                                    NULL);

Errors

CG_INVALID_CONTEXT_HANDLE_ERROR is generated if context is not a valid context.

CG_INVALID_ENUMERANT_ERROR is generated if program_type is not CG_SOURCE or CG_OBJECT.

CG_UNKNOWN_PROFILE_ERROR is generated if profile is not a supported profile.

CG_COMPILER_ERROR is generated if compilation fails.

History

cgCreateProgram was introduced in Cg 1.1.

See Also

cgCreateContext, cgCreateProgramFromFile, cgDestroyProgram, cgGetProgramString


Cg Toolkit | Cg Toolkit | Download | Release Archive | Profiles | Reference | Books | Discussions |


Cg Runtime Cg

cgAddStateEnumerant
cgCallStateResetCallback
cgCallStateSetCallback
cgCallStateValidateCallback
cgCombinePrograms2
cgCombinePrograms3
cgCombinePrograms4
cgCombinePrograms5
cgCombinePrograms
cgCompileProgram
cgConnectParameter
cgCopyEffect
cgCopyProgram
cgCreateArraySamplerState
cgCreateArrayState
cgCreateBuffer
cgCreateContext
cgCreateEffectAnnotation
cgCreateEffectFromFile
cgCreateEffectParameterArray
cgCreateEffectParameterMultiDimArray
cgCreateEffectParameter
cgCreateEffect
cgCreateObjFromFile
cgCreateObj
cgCreateParameterAnnotation
cgCreateParameterArray
cgCreateParameterMultiDimArray
cgCreateParameter
cgCreatePassAnnotation
cgCreatePass
cgCreateProgramAnnotation
cgCreateProgramFromEffect
cgCreateProgramFromFile
cgCreateProgram
cgCreateSamplerStateAssignment
cgCreateSamplerState
cgCreateStateAssignmentIndex
cgCreateStateAssignment
cgCreateState
cgCreateTechniqueAnnotation
cgCreateTechnique
cgDestroyBuffer
cgDestroyContext
cgDestroyEffect
cgDestroyObj
cgDestroyParameter
cgDestroyProgram
cgDisconnectParameter
cgEvaluateProgram
cgGetAnnotationName
cgGetAnnotationType
cgGetArrayDimension
cgGetArrayParameter
cgGetArraySize
cgGetArrayTotalSize
cgGetArrayType
cgGetAutoCompile
cgGetBehavior
cgGetBehaviorString
cgGetBoolAnnotationValues
cgGetBooleanAnnotationValues
cgGetBoolStateAssignmentValues
cgGetBufferSize
cgGetCompilerIncludeCallback
cgGetConnectedParameter
cgGetConnectedStateAssignmentParameter
cgGetConnectedToParameter
cgGetContextBehavior
cgGetDependentAnnotationParameter
cgGetDependentProgramArrayStateAssignmentParameter
cgGetDependentStateAssignmentParameter
cgGetDomain
cgGetDomainString
cgGetEffectContext
cgGetEffectName
cgGetEffectParameterBuffer
cgGetEffectParameterBySemantic
cgGetEnum
cgGetEnumString
cgGetErrorCallback
cgGetErrorHandler
cgGetError
cgGetErrorString
cgGetFirstDependentParameter
cgGetFirstEffectAnnotation
cgGetFirstEffectParameter
cgGetFirstEffect
cgGetFirstError
cgGetFirstLeafEffectParameter
cgGetFirstLeafParameter
cgGetFirstParameterAnnotation
cgGetFirstParameter
cgGetFirstPassAnnotation
cgGetFirstPass
cgGetFirstProgramAnnotation
cgGetFirstProgram
cgGetFirstSamplerStateAssignment
cgGetFirstSamplerState
cgGetFirstStateAssignment
cgGetFirstState
cgGetFirstStructParameter
cgGetFirstTechniqueAnnotation
cgGetFirstTechnique
cgGetFirstUniformBufferParameter
cgGetFloatAnnotationValues
cgGetFloatStateAssignmentValues
cgGetIntAnnotationValues
cgGetIntStateAssignmentValues
cgGetLastErrorString
cgGetLastListing
cgGetLockingPolicy
cgGetMatrixParameterdc
cgGetMatrixParameterdr
cgGetMatrixParameterfc
cgGetMatrixParameterfr
cgGetMatrixParameteric
cgGetMatrixParameterir
cgGetMatrixParameterOrder
cgGetMatrixParameter
cgGetMatrixSize
cgGetNamedEffectAnnotation
cgGetNamedEffectParameter
cgGetNamedEffect
cgGetNamedEffectUniformBuffer
cgGetNamedParameterAnnotation
cgGetNamedParameter
cgGetNamedPassAnnotation
cgGetNamedPass
cgGetNamedProgramAnnotation
cgGetNamedProgramParameter
cgGetNamedProgramUniformBuffer
cgGetNamedSamplerStateAssignment
cgGetNamedSamplerState
cgGetNamedStateAssignment
cgGetNamedState
cgGetNamedStructParameter
cgGetNamedSubParameter
cgGetNamedTechniqueAnnotation
cgGetNamedTechnique
cgGetNamedUniformBufferParameter
cgGetNamedUserType
cgGetNextAnnotation
cgGetNextEffect
cgGetNextLeafParameter
cgGetNextParameter
cgGetNextPass
cgGetNextProgram
cgGetNextStateAssignment
cgGetNextState
cgGetNextTechnique
cgGetNumConnectedToParameters
cgGetNumDependentAnnotationParameters
cgGetNumDependentProgramArrayStateAssignmentParameters
cgGetNumDependentStateAssignmentParameters
cgGetNumParentTypes
cgGetNumProgramDomains
cgGetNumStateEnumerants
cgGetNumSupportedProfiles
cgGetNumUserTypes
cgGetParameterBaseResource
cgGetParameterBaseType
cgGetParameterBufferIndex
cgGetParameterBufferOffset
cgGetParameterClassEnum
cgGetParameterClass
cgGetParameterClassString
cgGetParameterColumns
cgGetParameterContext
cgGetParameterDefaultValuedc
cgGetParameterDefaultValuedr
cgGetParameterDefaultValuefc
cgGetParameterDefaultValuefr
cgGetParameterDefaultValueic
cgGetParameterDefaultValueir
cgGetParameterDefaultValue
cgGetParameterDirection
cgGetParameterEffect
cgGetParameterIndex
cgGetParameterNamedType
cgGetParameterName
cgGetParameterOrdinalNumber
cgGetParameterProgram
cgGetParameterResourceIndex
cgGetParameterResourceName
cgGetParameterResource
cgGetParameterResourceSize
cgGetParameterResourceType
cgGetParameterRows
cgGetParameterSemantic
cgGetParameterSettingMode
cgGetParameterType
cgGetParameterValuedc
cgGetParameterValuedr
cgGetParameterValuefc
cgGetParameterValuefr
cgGetParameterValueic
cgGetParameterValueir
cgGetParameterValue
cgGetParameterValues
cgGetParameterVariability
cgGetParentType
cgGetPassName
cgGetPassProgram
cgGetPassTechnique
cgGetProfileDomain
cgGetProfile
cgGetProfileProperty
cgGetProfileSibling
cgGetProfileString
cgGetProgramBufferMaxIndex
cgGetProgramBufferMaxSize
cgGetProgramBuffer
cgGetProgramContext
cgGetProgramDomain
cgGetProgramDomainProfile
cgGetProgramDomainProgram
cgGetProgramInput
cgGetProgramOptions
cgGetProgramOutput
cgGetProgramOutputVertices
cgGetProgramProfile
cgGetProgramStateAssignmentValue
cgGetProgramString
cgGetResource
cgGetResourceString
cgGetSamplerStateAssignmentParameter
cgGetSamplerStateAssignmentState
cgGetSamplerStateAssignmentValue
cgGetSemanticCasePolicy
cgGetStateAssignmentIndex
cgGetStateAssignmentPass
cgGetStateAssignmentState
cgGetStateContext
cgGetStateEnumerantName
cgGetStateEnumerant
cgGetStateEnumerantValue
cgGetStateLatestProfile
cgGetStateName
cgGetStateResetCallback
cgGetStateSetCallback
cgGetStateType
cgGetStateValidateCallback
cgGetStringAnnotationValue
cgGetStringAnnotationValues
cgGetStringParameterValue
cgGetString
cgGetStringStateAssignmentValue
cgGetSupportedProfile
cgGetTechniqueEffect
cgGetTechniqueName
cgGetTextureStateAssignmentValue
cgGetTypeBase
cgGetTypeClass
cgGetType
cgGetTypeSizes
cgGetTypeString
cgGetUniformBufferBlockName
cgGetUniformBufferParameter
cgGetUserType
cgIsAnnotation
cgIsBuffer
cgIsContext
cgIsEffect
cgIsInterfaceType
cgIsParameterGlobal
cgIsParameter
cgIsParameterReferenced
cgIsParameterUsed
cgIsParentType
cgIsPass
cgIsProfileSupported
cgIsProgramCompiled
cgIsProgram
cgIsStateAssignment
cgIsState
cgIsTechnique
cgIsTechniqueValidated
cgMapBuffer
cgResetPassState
cgSetArraySize
cgSetAutoCompile
cgSetBoolAnnotation
cgSetBoolArrayStateAssignment
cgSetBoolStateAssignment
cgSetBufferData
cgSetBufferSubData
cgSetCompilerIncludeCallback
cgSetCompilerIncludeFile
cgSetCompilerIncludeString
cgSetContextBehavior
cgSetEffectName
cgSetEffectParameterBuffer
cgSetErrorCallback
cgSetErrorHandler
cgSetFloatAnnotation
cgSetFloatArrayStateAssignment
cgSetFloatStateAssignment
cgSetIntAnnotation
cgSetIntArrayStateAssignment
cgSetIntStateAssignment
cgSetLastListing
cgSetLockingPolicy
cgSetMatrixParameterdc
cgSetMatrixParameterdr
cgSetMatrixParameterfc
cgSetMatrixParameterfr
cgSetMatrixParameteric
cgSetMatrixParameterir
cgSetMatrixParameter
cgSetMultiDimArraySize
cgSetParameter1d
cgSetParameter1dv
cgSetParameter1f
cgSetParameter1fv
cgSetParameter1i
cgSetParameter1iv
cgSetParameter2d
cgSetParameter2dv
cgSetParameter2f
cgSetParameter2fv
cgSetParameter2i
cgSetParameter2iv
cgSetParameter3d
cgSetParameter3dv
cgSetParameter3f
cgSetParameter3fv
cgSetParameter3i
cgSetParameter3iv
cgSetParameter4d
cgSetParameter4dv
cgSetParameter4f
cgSetParameter4fv
cgSetParameter4i
cgSetParameter4iv
cgSetParameter
cgSetParameterSemantic
cgSetParameterSettingMode
cgSetParameterValuedc
cgSetParameterValuedr
cgSetParameterValuefc
cgSetParameterValuefr
cgSetParameterValueic
cgSetParameterValueir
cgSetParameterValue
cgSetParameterVariability
cgSetPassProgramParameters
cgSetPassState
cgSetProgramBuffer
cgSetProgramOutputVertices
cgSetProgramProfile
cgSetProgramStateAssignment
cgSetSamplerStateAssignment
cgSetSamplerState
cgSetSemanticCasePolicy
cgSetStateCallbacks
cgSetStateLatestProfile
cgSetStringAnnotation
cgSetStringParameterValue
cgSetStringStateAssignment
cgSetTextureStateAssignment
cgSetUniformBufferParameter
cgUnmapBuffer
cgUpdatePassParameters
cgUpdateProgramParameters
cgValidateTechnique