Foam::tmp<Foam::IOField<Type> > Foam::reconstructLagrangianField ( const word& cloudName, const polyMesh& mesh, const PtrList<fvMesh>& meshes, const word& fieldName ) { // Construct empty field on mesh tmp<IOField<Type> > tfield ( new IOField<Type> ( IOobject ( fieldName, mesh.time().timeName(), cloud::prefix/cloudName, mesh, IOobject::NO_READ, IOobject::NO_WRITE ), Field<Type>(0) ) ); Field<Type>& field = tfield(); forAll(meshes, i) { // Check object on local mesh IOobject localIOobject ( fieldName, meshes[i].time().timeName(), cloud::prefix/cloudName, meshes[i], IOobject::MUST_READ, IOobject::NO_WRITE ); if (localIOobject.headerOk()) { IOField<Type> fieldi(localIOobject); label offset = field.size(); field.setSize(offset + fieldi.size()); forAll(fieldi, j) { field[offset + j] = fieldi[j]; } }
/** get the nth item from a list of items in the ini file */ TPtrC CPerformanceFunctionalityBase::GetFieldL(const TDesC &aConfigSection, const TDesC &aName, const TInt aIndex) { TPtrC ret; TPtrC tfield( aName ); HBufC *fval=HBufC::NewLC(tfield.Length()+2);//assume #fields < 100 TPtr fptr=fval->Des(); fptr.Append( tfield ); fptr.AppendNum( aIndex ); GetStringFromConfig( aConfigSection, fptr, ret ); CleanupStack::PopAndDestroy( fval ); return ret; }
int main (int argc, char *argv[]) { struct statfs s1, s2; int diff = 0; if (argc != 3 && argc != 4) { fprintf (stderr, "Usage: tstatfs dir1 dir2 [field]\n"); exit (1); } if (argc == 4) field = argv[3]; if (statfs (argv[1], &s1) < 0) { perror (argv[1]); exit (1); } if (statfs (argv[2], &s2) < 0) { perror (argv[2]); exit (1); } if (tfield ("type") && s1.f_type != s2.f_type) { fprintf (stderr, "f_type differs\n"); diff++; } if (tfield ("bsize") && s1.f_bsize != s2.f_bsize ) { fprintf (stderr, "f_bsize differs\n"); diff++; } if (tfield ("blocks") && s1.f_blocks != s2.f_blocks) { fprintf (stderr, "f_blocks differs\n"); diff++; } if (tfield ("bfree") && s1.f_bfree != s2.f_bfree) { fprintf (stderr, "f_bfree differs\n"); diff++; } if (tfield ("bavail") && s1.f_bavail != s2.f_bavail) { fprintf (stderr, "f_bavail differs\n"); diff++; } if (tfield ("files") && s1.f_files != s2.f_files) { fprintf (stderr, "f_files differs\n"); diff++; } if (tfield ("ffree") && s1.f_ffree != s2.f_ffree) { fprintf (stderr, "f_ffree differs\n"); diff++; } #if 0 if (tfield ("fsid") && (s1.f_fsid.__val[0] != s2.f_fsid.__val[0] || s1.f_fsid.__val[1] != s2.f_fsid.__val[1])) { fprintf (stderr, "statfs f_fsid differs (%d.%d != %d.%d)\n", s1.f_fsid.__val[0], s1.f_fsid.__val[1], s2.f_fsid.__val[0], s2.f_fsid.__val[1]); diff++; } #else if (memcmp (&s1.f_fsid, &s2.f_fsid, sizeof (s1.f_fsid)) != 0) { fprintf (stderr, "f_fsid differs\n"); diff++; } #endif if (tfield ("namelen") && s1.f_namelen != s2.f_namelen) { fprintf (stderr, "f_namelen differs\n"); diff++; } fprintf (stderr, "%d differences\n", diff); exit (0); }