1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>PetscBinaryWrite</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<A NAME="PetscBinaryWrite"><H1>PetscBinaryWrite</H1></A>
Writes to a binary file.
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petsc.h"
int PetscBinaryWrite(int fd,void *p,int n,PetscDataType type,int istemp)
</PRE>
Not Collective
<P>
<H3><FONT COLOR="#CC3333">Input Parameters</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>fd </B></TD><TD>- the file
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>p </B></TD><TD>- the buffer
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>n </B></TD><TD>- the number of items to write
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>type </B></TD><TD>- the type of items to read (PETSC_INT, PETSC_DOUBLE or PETSC_SCALAR)
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>istemp </B></TD><TD>- 0 if buffer data should be preserved, 1 otherwise.
</TD></TR></TABLE>
<P>
<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
<A HREF="../Sys/PetscBinaryWrite.html#PetscBinaryWrite">PetscBinaryWrite</A>() uses byte swapping to work on all machines.
Integers are stored on the file as 32 long, regardless of whether
they are stored in the machine as 32 or 64, this means the same
binary file may be read on any machine.
<P>
The Buffer p should be read-write buffer, and not static data.
This way, byte-swapping is done in-place, and then the buffer is
written to the file.
<P>
This routine restores the original contents of the buffer, after
it is written to the file. This is done by byte-swapping in-place
the second time. If the flag istemp is set to 1, the second
byte-swapping operation is not done, thus saving some computation,
but the buffer corrupted is corrupted.
<P>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
<A HREF="../Sys/PetscBinaryRead.html#PetscBinaryRead">PetscBinaryRead</A>(), <A HREF="../Sys/PetscBinaryOpen.html#PetscBinaryOpen">PetscBinaryOpen</A>(), <A HREF="../Sys/PetscBinaryClose.html#PetscBinaryClose">PetscBinaryClose</A>()
<BR><P><B><P><B><FONT COLOR="#CC3333">Level:</FONT></B>advanced
<BR><FONT COLOR="#CC3333">Location:</FONT></B><A HREF="../../../src/sys/src/fileio/sysio.c.html#PetscBinaryWrite">src/sys/src/fileio/sysio.c</A>
<BR><A HREF="./index.html">Index of all Sys routines</A>
<BR><A HREF="../../index.html">Table of Contents for all manual pages</A>
<BR><A HREF="../singleindex.html">Index of all manual pages</A>
<P><H3><FONT COLOR="#CC3333">Examples</FONT></H3>
<A HREF="../../../src/vec/examples/tutorials/ex6.c.html">src/vec/examples/tutorials/ex6.c.html</A><BR>
</BODY></HTML>
|