Sophie

Sophie

distrib > Mandriva > cooker > i586 > by-pkgid > b70c0f154c89d61ccc233b855bfed06f > files > 857

cg-3.0.0018-0.1.i586.rpm

<HTML>

<HEAD>
<TITLE>cgSetParameterSettingMode</TITLE>
<STYLE TYPE="text/css" MEDIA=screen>
<!--
		
BODY {
 font-family: Arial,Helvetica;
}

BLOCKQUOTE { margin: 10pt;  }

H1,A { color: #336699; }


/*** Top menu style ****/
.mmenuon { 
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #ff6600; font-size: 10pt;
 }
.mmenuoff { 
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #ffffff; font-size: 10pt;
}	  
.cpyright {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #ffffff; font-size: xx-small;
}
.cpyrightText {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #ffffff; font-size: xx-small;
}
.sections { 
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: 11pt;
}	 
.dsections { 
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: 12pt;
}	
.slink { 
 font-family: Arial,Helvetica; font-weight: normal; text-decoration: none;
 color: #336699; font-size: 9pt;
}	 

.slink2 { font-family: Arial,Helvetica; text-decoration: none; color: #336699; }	 

.maintitle { 
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: 18pt;
}	 
.dblArrow {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: small;
}
.menuSec {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: small;
}

.newstext {
 font-family: Arial,Helvetica; font-size: small;
}

.linkmenu {
 font-family: Arial,Helvetica; color: #000000; font-weight: bold;
 text-decoration: none;
}

P {
 font-family: Arial,Helvetica;
}

PRE            { 
																font-family: monospace;
																white-space: pre; 
																font-color: #333333; 
																font-weight: 100;
																background-color: #eeeeee; 
																padding: 5px; 
																width: 90%; 
																border-style: solid;
																border-width: 2px; 
																border-color: #bebebe; 
	              }
.quote { 
 font-family: Times; text-decoration: none;
 color: #000000; font-size: 9pt; font-style: italic;
}	
.smstd { font-family: Arial,Helvetica; color: #000000; font-size: x-small; } 
.std { font-family: Arial,Helvetica; color: #000000; } 
.meerkatTitle { 
 font-family: sans-serif; font-size: x-small;  color: black;    }

.meerkatDescription { font-family: sans-serif; font-size: 10pt; color: black }
.meerkatCategory { 
 font-family: sans-serif; font-size: 9pt; font-weight: bold; font-style: italic; 
 color: brown; }
.meerkatChannel { 
 font-family: sans-serif; font-size: 9pt; font-style: italic; color: brown; }
.meerkatDate { font-family: sans-serif; font-size: xx-small; color: #336699; }

.tocTitle {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #333333; font-size: 10pt;
}

.toc-item {
 font-family: Arial,Helvetica; font-weight: bold; 
 color: #336699; font-size: 10pt; text-decoration: underline;
}

.perlVersion {
 font-family: Arial,Helvetica; font-weight: bold; 
 color: #336699; font-size: 10pt; text-decoration: none;
}

.docTitle {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #000000; font-size: 10pt;
}
.dotDot {
 font-family: Arial,Helvetica; font-weight: bold; 
 color: #000000; font-size: 9pt;
}

.docSec {
 font-family: Arial,Helvetica; font-weight: normal; 
 color: #333333; font-size: 9pt;
}
.docVersion {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: 10pt;
}

.docSecs-on {
 font-family: Arial,Helvetica; font-weight: normal; text-decoration: none;
 color: #ff0000; font-size: 10pt;
}
.docSecs-off {
 font-family: Arial,Helvetica; font-weight: normal; text-decoration: none;
 color: #333333; font-size: 10pt;
}

h3 {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: small;
}
h2 {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: medium;
}
h1 {
 font-family: Verdana,Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: large;
}

DL {
 font-family: Arial,Helvetica; font-weight: normal; text-decoration: none;
 color: #333333; font-size: 10pt;
}

UL > LI > A {
 font-family: Arial,Helvetica; font-weight: bold;
 color: #336699; font-size: 10pt;
}

.moduleInfo {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #333333; font-size: 11pt;
}

.moduleInfoSec {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none;
 color: #336699; font-size: 10pt;
}

.moduleInfoVal {
 font-family: Arial,Helvetica; font-weight: normal; text-decoration: underline;
 color: #000000; font-size: 10pt;
}

.cpanNavTitle {
 font-family: Arial,Helvetica; font-weight: bold; 
 color: #ffffff; font-size: 10pt;
}
.cpanNavLetter {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; 
 color: #333333; font-size: 9pt;
}
.cpanCat {
 font-family: Arial,Helvetica; font-weight: bold; text-decoration: none; 
 color: #336699; font-size: 9pt;
}


-->
</STYLE>

</HEAD>

<BODY>


<object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e">
</object>




<BLOCKQUOTE>

<H1><A NAME="NAME"><A NAME="1">NAME

</A></A></H1>
<P>
<B>cgSetParameterSettingMode</B> - set the parameter setting mode for a context


</P>

<H1><A NAME="SYNOPSIS"><A NAME="2">SYNOPSIS

</A></A></H1>
<PRE>  #include &lt;Cg/cg.h&gt;

  void cgSetParameterSettingMode( CGcontext context,
                                  CGenum parameterSettingMode );
</PRE>
<H1><A NAME="PARAMETERS"><A NAME="3">PARAMETERS

</A></A></H1>
<DL>
<DT><STRONG>context

</STRONG></DT>
<DD>

<P>
The context in which to set the parameter setting mode.


</P>
<DT><STRONG>parameterSettingMode

</STRONG></DT>
<DD>

<P>
The mode to which <B>context</B> will be set.  Must be one of the following :


</P>
<UL>
<LI>
<B>CG_IMMEDIATE_PARAMETER_SETTING</B>

</LI>
<LI>
<B>CG_DEFERRED_PARAMETER_SETTING</B>

</LI>
</UL>
</DD></DL>

<H1><A NAME="RETURN_VALUES"><A NAME="4">RETURN VALUES

</A></A></H1>
<P>
None.


</P>

<H1><A NAME="DESCRIPTION"><A NAME="5">DESCRIPTION

</A></A></H1>
<P>
<B>cgSetParameterSettingMode</B> controls the behavior of the context when setting
parameters.  With deferred parameter setting, the corresponding 3D API
parameter is not immediately updated by <A HREF="cgSetParameter.html">cgSetParameter</A> commands. 
If the application does not need to access these 3D API parameter values,
then this mode allows improved performance by avoiding unnecessary 3D API calls.


</P>
<P>
Parameters of variability <B>CG_VARYING</B> are never deferred.


</P>
<P>
When the parameter setting mode is <B>CG_DEFERRED_PARAMETER_SETTING</B>,
non-erroneous <A HREF="cgSetParameter.html">cgSetParameter</A> commands record the updated parameter value
but do not immediately update the corresponding 3D API parameter.  Instead
the parameter is marked internally as <I>update deferred</I>.  The 3D API commands
required to update any program parameters marked <I>update deferred</I> are
performed as part of the next program bind (see <A HREF="cgGLBindProgram.html">cgGLBindProgram</A>,
<A HREF="cgD3D9BindProgram.html">cgD3D9BindProgram</A>, or <A HREF="cgD3D8BindProgram.html">cgD3D8BindProgram</A>).


</P>
<P>
If a context's parameter setting mode was <B>CG_DEFERRED_PARAMETER_SETTING</B>
and one or more parameters are marked <I>update deferred</I>, changing the parameter
setting mode to <B>CG_IMMEDIATE_PARAMETER_SETTING</B> does not cause parameters
marked <I>update deferred</I> to be updated.  The application can use
<A HREF="cgUpdateProgramParameters.html">cgUpdateProgramParameters</A> or
<A HREF="cgUpdatePassParameters.html">cgUpdatePassParameters</A> to force the updating
of parameters marked <I>update deferred</I>.


</P>
<P>
<B>parameterSettingMode</B> must be one of the following enumerants :


</P>
<UL>
<LI>
<B>CG_IMMEDIATE_PARAMETER_SETTING</B>

</LI>
<P>
Non-erroneous <A HREF="cgSetParameter.html">cgSetParameter</A> commands immediately update the corresponding
3D API parameter.  This is the default mode.


</P>
<LI>
<B>CG_DEFERRED_PARAMETER_SETTING</B>

</LI>
<P>
Non-erroneous <A HREF="cgSetParameter.html">cgSetParameter</A> commands record the updated parameter
value but do not immediately update the corresponding 3D API parameter.
These updates will happen during the next program bind.  The updates can
be explicitly forced to occur by using
<A HREF="cgUpdateProgramParameters.html">cgUpdateProgramParameters</A> or
<A HREF="cgUpdatePassParameters.html">cgUpdatePassParameters</A>.


</P>
</UL>

<H1><A NAME="EXAMPLES"><A NAME="6">EXAMPLES

</A></A></H1>
<P>
Change context to use deferred parameter updates:


</P>
<PRE>  cgSetParameterSettingMode(myCgContext, CG_DEFERRED_PARAMETER_SETTING);
</PRE><P>
Change context to its initial behavior of performing parameter updates immediately:


</P>
<PRE>  cgSetParameterSettingMode(myCgContext, CG_IMMEDIATE_PARAMETER_SETTING);
</PRE>
<H1><A NAME="ERRORS"><A NAME="7">ERRORS

</A></A></H1>
<P>
<B>CG_INVALID_CONTEXT_HANDLE_ERROR</B> is generated if <B>context</B> is not a valid context.


</P>
<P>
<B>CG_INVALID_ENUMERANT_ERROR</B> is generated if <B>parameterSettingMode</B> is not
<B>CG_IMMEDIATE_PARAMETER_SETTING</B> or <B>CG_DEFERRED_PARAMETER_SETTING</B>.


</P>

<H1><A NAME="HISTORY"><A NAME="8">HISTORY

</A></A></H1>
<P>
<B>cgSetParameterSettingMode</B> was introduced in Cg 2.0.


</P>

<H1><A NAME="SEE_ALSO"><A NAME="9">SEE ALSO

</A></A></H1>
<P>
<A HREF="cgGetParameterSettingMode.html">cgGetParameterSettingMode</A>,
<A HREF="cgUpdateProgramParameters.html">cgUpdateProgramParameters</A>,
<A HREF="cgUpdatePassParameters.html">cgUpdatePassParameters</A>,
<A HREF="cgSetParameter.html">cgSetParameter</A>,
<A HREF="cgSetParameterVariability.html">cgSetParameterVariability</A>,
<A HREF="cgGetParameterVariability.html">cgGetParameterVariability</A>,
<A HREF="cgGLBindProgram.html">cgGLBindProgram</A>,
<A HREF="cgD3D9BindProgram.html">cgD3D9BindProgram</A>,
<A HREF="cgD3D8BindProgram.html">cgD3D8BindProgram</A>

</P>

</BLOCKQUOTE>



</BODY>