本文整理汇总了C++中dSprintf函数的典型用法代码示例。如果您正苦于以下问题:C++ dSprintf函数的具体用法?C++ dSprintf怎么用?C++ dSprintf使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了dSprintf函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: endFrame
virtual void endFrame()
{
char buffer[ 256 ];
for( U32 i = 0; i < mRecords.size(); ++ i )
{
if( i != 0 )
mStream.write( 1, "," );
SampleRecord& record = mRecords[ i ];
if( record.mSet )
{
if( record.mType == TypeBool )
{
if( record.mValue.mBool )
mStream.write( 4, "true" );
else
mStream.write( 5, "false" );
}
else if( record.mType == TypeS32 )
{
dSprintf( buffer, sizeof( buffer ), "%d", record.mValue.mS32 );
mStream.write( dStrlen( buffer ), buffer );
}
else if( record.mType == TypeF32 )
{
dSprintf( buffer, sizeof( buffer ), "%f", record.mValue.mF32 );
mStream.write( dStrlen( buffer ), buffer );
}
else if( record.mType == TypeString )
{
//FIXME: does not do doubling of double quotes in the string at the moment
mStream.write( 1, "\"" );
mStream.write( dStrlen( record.mValue.mString ), record.mValue.mString );
mStream.write( 1, "\"" );
}
else
AssertWarn( false, "CSVSamplerBackend::endFrame - bug: invalid sample type" );
}
record.clean();
}
newline();
}
示例2: dSprintf
bool PlatformAssert::process(Type assertType,
const char *filename,
U32 lineNumber,
const char *message)
{
// If we're somehow recursing, just die.
if(processing)
Platform::debugBreak();
processing = true;
bool ret = false;
// always dump to the Assert to the Console
if (Con::isActive())
{
if (assertType == Warning)
Con::warnf(ConsoleLogEntry::Assert, "%s(%ld,0): {%s} - %s", filename, lineNumber, typeName[assertType], message);
else
Con::errorf(ConsoleLogEntry::Assert, "%s(%ld,0): {%s} - %s", filename, lineNumber, typeName[assertType], message);
}
// if not a WARNING pop-up a dialog box
if (assertType != Warning)
{
// used for processing navGraphs (an assert won't botch the whole build)
if(Con::getBoolVariable("$FP::DisableAsserts", false) == true)
Platform::forceShutdown(1);
char buffer[2048];
dSprintf(buffer, 2048, "%s: (%s @ %ld)", typeName[assertType], filename, lineNumber);
if( !ignoreAll )
{
// Display message box with Debug, Ignore, Ignore All, and Exit options
switch( Platform::AlertAssert(buffer, message) )
{
case Platform::ALERT_ASSERT_DEBUG:
ret = true;
break;
case Platform::ALERT_ASSERT_IGNORE:
ret = false;
break;
case Platform::ALERT_ASSERT_IGNORE_ALL:
ignoreAll = true;
ret = false;
break;
default:
case Platform::ALERT_ASSERT_EXIT:
Platform::forceShutdown(1);
break;
}
}
}
processing = false;
return ret;
}
示例3: dSprintf
void EditTSCtrl::_renderScene( ObjectRenderInst*, SceneRenderState *state, BaseMatInstance* )
{
GFXTransformSaver saver;
// render through console callbacks
SimSet * missionGroup = static_cast<SimSet*>(Sim::findObject("MissionGroup"));
if(missionGroup)
{
mConsoleRendering = true;
// [ rene, 27-Jan-10 ] This calls onEditorRender on the server objects instead
// of on the client objects which seems a bit questionable to me.
for(SimSetIterator itr(missionGroup); *itr; ++itr)
{
SceneObject* object = dynamic_cast< SceneObject* >( *itr );
if( object && object->isRenderEnabled() && !object->isHidden() )
{
char buf[2][16];
dSprintf(buf[0], 16, object->isSelected() ? "true" : "false");
dSprintf(buf[1], 16, object->isExpanded() ? "true" : "false");
object->onEditorRender_callback( getIdString(), buf[0], buf[1] );
}
}
mConsoleRendering = false;
}
// render the mission area...
renderMissionArea();
// Draw the grid
if ( mRenderGridPlane )
renderGrid();
// render the editor stuff
renderScene(mSaveViewport);
// Draw the camera axis
GFX->setClipRect(mSaveViewport);
GFX->setStateBlock(mDefaultGuiSB);
renderCameraAxis();
}
示例4: dSprintf
const char *SimDataBlockEvent::getDebugName()
{
SimObject *obj = Sim::findObject(id);
static char buffer[256];
dSprintf(buffer, sizeof(buffer), "%s [%s - %s]",
getClassName(),
obj ? obj->getName() : "",
obj ? obj->getClassName() : "NONE");
return buffer;
}
示例5: assignConstantNumbers
void PixelParamsDefHLSL::print( Stream &stream, bool isVerterShader )
{
assignConstantNumbers();
const char * opener = "Fragout main( ConnectData IN";
stream.write( dStrlen(opener), opener );
// find all the sampler & uniform variables and print them out
for( U32 i=0; i<LangElement::elementList.size(); i++)
{
Var *var = dynamic_cast<Var*>(LangElement::elementList[i]);
if( var )
{
if( var->uniform )
{
WRITESTR( ",\r\n " );
U8 varNum[32];
if( var->sampler )
{
//dSprintf( (char*)varNum, sizeof(varNum), ": register(S%d)", var->constNum );
varNum[0] = NULL;
}
else
{
dSprintf( (char*)varNum, sizeof(varNum), ": register(C%d)", var->constNum );
}
U8 output[256];
if (var->arraySize <= 1)
dSprintf( (char*)output, sizeof(output), "uniform %-9s %-15s %s", var->type, var->name, varNum );
else
dSprintf( (char*)output, sizeof(output), "uniform %-9s %s[%d] %s", var->type, var->name, var->arraySize, varNum );
WRITESTR( (char*) output );
}
}
}
const char *closer = "\r\n)\r\n{\r\n Fragout OUT;\r\n\r\n";
stream.write( dStrlen(closer), closer );
}
示例6: script_simobject_setfield_float
void script_simobject_setfield_float(U32 objectId, const char* fieldName, F32 v)
{
SimObject *object = Sim::findObject( objectId );
if( object )
{
char buf[256];
dSprintf(buf, 256, "%g", v );
object->setDataField(fieldName, "", buf);
}
}
示例7: s
const char* RemoteCommandEvent::addTaggedString(const char* str)
{
NetStringHandle s(str);
gNetStringTable->incStringRefScript(s.getIndex());
char *ret = Con::getReturnBuffer(10);
ret[0] = StringTagPrefixByte;
dSprintf(ret + 1, 9, "%d", s.getIndex());
return ret;
}
示例8: if
XftFont *loadFont(const char *name, S32 size, Display *display)
{
XftFont *fontInfo = NULL;
char* fontname = const_cast<char*>(name);
if (dStrlen(fontname)==0)
fontname = "arial";
else if (stristr(const_cast<char*>(name), "arial") != NULL)
fontname = "arial";
else if (stristr(const_cast<char*>(name), "lucida console") != NULL)
fontname = "lucida console";
char* weight = "medium";
char* slant = "roman"; // no slant
if (stristr(const_cast<char*>(name), "bold") != NULL)
weight = "bold";
if (stristr(const_cast<char*>(name), "italic") != NULL)
slant = "italic";
int mSize = size - 2 - (int)((float)size * 0.1);
char xfontName[512];
// We specify a lower DPI to get 'correct' looking fonts, if we go with the
// native DPI the fonts are to big and don't fit the widgets.
dSprintf(xfontName, 512, "%s-%d:%s:slant=%s:dpi=76", fontname, mSize, weight, slant);
// Lets see if Xft can get a font for us.
char xftname[1024];
fontInfo = XftFontOpenName(display, DefaultScreen(display), xfontName);
// Cant find a suitabke font, default to a known font (6x10)
if ( !fontInfo )
{
dSprintf(xfontName, 512, "6x10-%d:%s:slant=%s:dpi=76", mSize, weight, slant);
fontInfo = XftFontOpenName(display, DefaultScreen(display), xfontName);
}
XftNameUnparse(fontInfo->pattern, xftname, 1024);
#ifdef DEBUG
Con::printf("Font '%s %d' mapped to '%s'\n", name, size, xftname);
#endif
return fontInfo;
}
示例9: isMainDotCsPresent
static bool isMainDotCsPresent(char *dir)
{
char maincsbuf[MAX_MAC_PATH_LONG];
const char *maincsname = "/main.cs";
const U32 len = dStrlen(dir) + dStrlen(maincsname)+1;
AssertISV(len < MAX_MAC_PATH_LONG, "Sorry, path is too long, I can't run from this folder.");
dSprintf(maincsbuf,MAX_MAC_PATH_LONG,"%s%s", dir, maincsname);
return Platform::isFile(maincsbuf);
}
示例10: script_simobject_setfield_int
void script_simobject_setfield_int(U32 objectId, const char* fieldName, S32 v)
{
SimObject *object = Sim::findObject( objectId );
if( object )
{
// this seems pretty lame, though it is how it is handled in consoleType.cpp
char buf[256];
dSprintf(buf, 256, "%d", v );
object->setDataField(fieldName, "", buf);
}
}
示例11: opendir
bool Platform::hasSubDirectory(const char *pPath)
{
if (!pPath)
return false;
struct dirent *d;
DIR *dip;
dip = opendir(pPath);
if (dip == NULL)
return false;
while (d = readdir(dip))
{
bool isDir = false;
if (d->d_type == DT_UNKNOWN)
{
char child [1024];
if ((pPath[dStrlen(pPath) - 1] == '/'))
dSprintf(child, 1024, "%s%s", pPath, d->d_name);
else
dSprintf(child, 1024, "%s/%s", pPath, d->d_name);
isDir = Platform::isDirectory (child);
}
else if (d->d_type & DT_DIR)
isDir = true;
if( isDir )
{
// Skip the . and .. directories
if (dStrcmp(d->d_name, ".") == 0 ||dStrcmp(d->d_name, "..") == 0)
continue;
if (Platform::isExcludedDirectory(d->d_name))
continue;
Platform::clearExcludedDirectories();
closedir(dip);
return true;
}
}
closedir(dip);
Platform::clearExcludedDirectories();
return false;
}
示例12: dSprintf
bool GuiGradientSwatchCtrl::onWake()
{
if ( !Parent::onWake() )
return false;
static const U32 bufSize = 512;
char* altCommand = Con::getReturnBuffer(bufSize);
dSprintf( altCommand, bufSize, "%s(%i.color, \"%i.setColor\");", mColorFunction, getId(), getId() );
setField( "altCommand", altCommand );
return true;
}
示例13: dSprintf
bool CIniFile::SetAllValues(const string §ion, const string &prefix, const Vector<string> &values)
{
char key[256];
bool stat = true;
for(S32 i = 0; i < values.size(); i++)
{
dSprintf(key, 255, "%s%d", prefix.c_str(), i);
stat &= SetValue(section, key, values[i], true);
}
return stat; // true if all worked, false if any failed
}
示例14: memset
//-------------------------------------------------------------
//------------------------------ 时间格式化(YYYY-MM-DD HH:MM:SS)
pc_str time_format (uint64 _time)
{
tm tmTime;
memset(&tmTime,0,sizeof(tmTime));
if(getLocalTime(&tmTime,_time) != 0)
return "";
static char szDate[32] = {0};
dSprintf(szDate,sizeof(szDate),"%.4d-%.2d-%.2d %.2d:%.2d:%.2d",tmTime.tm_year + 1900,tmTime.tm_mon + 1,tmTime.tm_mday,tmTime.tm_hour,tmTime.tm_min,tmTime.tm_sec);
return szDate;
}
示例15: dSprintf
void PostEffectVis::_setDefaultCaption( VisWindow &vis, U32 texIndex )
{
PostEffect *pfx = vis.pfx;
GuiWindowCtrl *winCtrl = vis.window[texIndex];
if ( texIndex == Target )
{
char caption[256];
char name[256];
if ( pfx->getName() == NULL || dStrlen( pfx->getName() ) == 0 )
dSprintf( name, 256, "(none)" );
else
dSprintf( name, 256, "%s", pfx->getName() );
dSprintf( caption, 256, "%s[%i] target [NOT ENABLED]", name, pfx->getId() );
winCtrl->setDataField( StringTable->insert("text"), NULL, caption );
}
else
{
char caption[256];
char name[256];
if ( pfx->getName() == NULL || dStrlen( pfx->getName() ) == 0 )
dSprintf( name, 256, "(none)" );
else
dSprintf( name, 256, "%s", pfx->getName() );
dSprintf( caption, 256, "%s[%i] input%i - %s [NOT ENABLED]", name, pfx->getId(), texIndex-1, pfx->mTexFilename[texIndex-1].c_str() );
winCtrl->setDataField( StringTable->insert("text"), NULL, caption );
}
}