本文整理汇总了C++中std::ostringstream::setf方法的典型用法代码示例。如果您正苦于以下问题:C++ ostringstream::setf方法的具体用法?C++ ostringstream::setf怎么用?C++ ostringstream::setf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类std::ostringstream
的用法示例。
在下文中一共展示了ostringstream::setf方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: invalid_argument
if (qs.size() < 2)
throw std::invalid_argument(Exception(String("joint waypoint text file must contain at least 2 'waypoint' vectors")));
init(qs,times,deltas);
}
else { // output
std::ostringstream out;
// comment header
out << "# Joint waypoint trajectory [joint positions & times (at-end)]" << std::endl;
out << "# the following line should be 'absolute' for absolute qi's & t values or 'relative' if the vectors represent inter-waypoint deltas dqi's & dt" << std::endl;
out << "absolute" << std::endl; // not "relative"
out << "# q0 q1 ... qn t" << std::endl;
std::ostream::fmtflags savedFlags = out.setf(std::ios_base::dec | std::ios_base::right);
Int savedPrec = out.precision(10);
Int savedWidth = out.width(13);
const Int dof=qs[0].size();
// this is a hack, as under gcc the flags don't appear to stay set after an output op (!?)
#define setflags \
out.setf(std::ios_base::dec | std::ios_base::right); \
out.precision(10); \
out.width(13);
setflags;
for(Int i=0; i<qs.size(); i++) {
Vector q(qs[i]);
Time t(times[i]);
示例2: geometry_tpc_v5
//____________________________________________________________________
int geometry_tpc_v5() {
gROOT->LoadMacro("$VMCWORKDIR/macro/mpd/geometry/mpdshape.class.C");
gROOT->LoadClass("Mpdshape");
const char* filename = "tpc_v5.geo";
// output file
f = new ofstream(filename, ios::out | ios::trunc);
// streams
std::ostringstream points, position, rotation;
points.setf(ios::showpoint); points.setf(ios::fixed);
points << setprecision(6);
position.setf(ios::showpoint); position.setf(ios::fixed);
position << setprecision(6);
rotation.setf(ios::showpoint); rotation.setf(ios::fixed);
rotation << setprecision(6);
// create full tpc volume
Fill_TUBE(tpc_z, TpcInnRad, TpcOutRad);
// std::cout << points.str() << endl;
Mpdshape* tube = new Mpdshape(f, "tpcChamber1", "cave", "TUBE",
"air", points.str());
tube->SetSegment(0);
tube->DumpToFile();
build_wall("In", TpcInnRad);
build_wall("Out", TpcOutRad - wall_thickness);
delete tube;
// ===========================================================
// make TPC membrane
Clear();
Double_t xWidth,yWidth,zWidth,kx,my,kz,phi_cent;
// make membrane
zWidth = mem_thick;
Fill_TUBE(zWidth, TpcInnRad + wall_thickness, TpcOutRad - wall_thickness);
Mpdshape* membrane = new Mpdshape(f, "tpc01mb", "tpcChamber1", "TUBE",
"rohacellhf71", points.str());
membrane->SetPosition(0., 0., 0.);
membrane->DumpToFile();
#ifdef SENSIT
// ===========================================================
// TPC sensitive volume
// make half of sensitive volume
zWidth = .5*(tpc_drift_z - mem_thick);
Fill_TUBE(zWidth, TpcInnRad + wall_thickness, TpcOutRad - wall_thickness);
Mpdshape* tpchalf = new Mpdshape(f, "tpc01mod", "tpcChamber1", "TUBE",
"air", points.str());
tpchalf->SetSegment(1);
tpchalf->SetPosition(0., 0., tpc_drift_z - zWidth);
tpchalf->SetRotation(" 1. 0. 0. 0. 1. 0. 0. 0. 1.");
tpchalf->DumpWithIncrement();
// make field cage
FieldCage(zWidth);
// make sectors
internal_sector();
// second half sens vol
tpchalf->SetPosition(0., 0., -tpc_drift_z + zWidth);
tpchalf->SetRotation(" 1. 0. 0. 0. 1. 0. 0. 0. -1.");
tpchalf->DumpToFile();
#endif
#ifdef ENDCAP
// ===========================================================
// Begin EndCap
// ===========================================================
zWidth =.5*(tpc_z - tpc_drift_z);
Fill_TUBE(zWidth, TpcInnRad, TpcOutRad);
// endcap
Mpdshape* tpcendcap = new Mpdshape(f, "tpc01ec", "tpcChamber1", "TUBE",
"air", points.str());
tpcendcap->SetSegment(1);
Double_t z_ec = zWidth + tpc_drift_z;
tpcendcap->SetPosition(0., 0., z_ec);
tpcendcap->SetRotation(" 1. 0. 0. 0. 1. 0. 0. 0. 1.");
tpcendcap->DumpWithIncrement();
//============================================================
//.........这里部分代码省略.........