1 #ifndef COIN_SOOUTPUT_H
2 #define COIN_SOOUTPUT_H
27 #include <Inventor/system/inttypes.h>
28 #include <Inventor/SbBasic.h>
29 #include <Inventor/SbString.h>
40 typedef void * SoOutputReallocCB(
void * ptr,
size_t newSize);
44 enum Stage { COUNT_REFS, WRITE };
52 virtual void setFilePointer(FILE * newFP);
53 virtual FILE * getFilePointer(
void)
const;
54 virtual SbBool openFile(
const char *
const fileName);
55 virtual void closeFile(
void);
57 SbBool setCompression(
const SbName & compmethod,
58 const float level = 0.5f);
59 static const SbName * getAvailableCompressionMethods(
unsigned int & num);
61 virtual void setBuffer(
void * bufPointer,
size_t initSize,
62 SoOutputReallocCB * reallocFunc, int32_t offset = 0);
63 virtual SbBool getBuffer(
void * & bufPointer,
size_t & nBytes)
const;
64 virtual size_t getBufferSize(
void)
const;
65 virtual void resetBuffer(
void);
66 virtual void setBinary(
const SbBool flag);
67 virtual SbBool isBinary(
void)
const;
68 virtual void setHeaderString(
const SbString & str);
69 virtual void resetHeaderString(
void);
70 virtual void setFloatPrecision(
const int precision);
72 void setStage(Stage stage);
73 Stage getStage(
void)
const;
75 void incrementIndent(
const int levels = 1);
76 void decrementIndent(
const int levels = 1);
78 virtual void write(
const char c);
79 virtual void write(
const char * s);
80 virtual void write(
const SbString & s);
81 virtual void write(
const SbName & n);
82 virtual void write(
const int i);
83 virtual void write(
const unsigned int i);
84 virtual void write(
const short s);
85 virtual void write(
const unsigned short s);
86 virtual void write(
const float f);
87 virtual void write(
const double d);
88 virtual void writeBinaryArray(
const unsigned char * c,
const int length);
89 virtual void writeBinaryArray(
const int32_t *
const l,
const int length);
90 virtual void writeBinaryArray(
const float *
const f,
const int length);
91 virtual void writeBinaryArray(
const double *
const d,
const int length);
93 virtual void indent(
void);
94 virtual void reset(
void);
95 void setCompact(SbBool flag);
96 SbBool isCompact(
void)
const;
97 void setAnnotation(uint32_t bits);
98 uint32_t getAnnotation(
void);
100 static SbString getDefaultASCIIHeader(
void);
101 static SbString getDefaultBinaryHeader(
void);
103 int addReference(
const SoBase * base);
104 int findReference(
const SoBase * base)
const;
105 void setReference(
const SoBase * base,
int refid);
107 void addDEFNode(
SbName name);
108 SbBool lookupDEFNode(
SbName name);
109 void removeDEFNode(
SbName name);
111 void pushProto(SoProto * proto);
112 SoProto * getCurrentProto(
void)
const;
117 void resolveRoutes(
void);
120 SbBool isToBuffer(
void)
const;
121 size_t bytesInBuf(
void)
const;
122 SbBool makeRoomInBuf(
size_t nBytes);
123 void convertShort(
short s,
char * to);
124 void convertInt32(int32_t l,
char * to);
125 void convertFloat(
float f,
char * to);
126 void convertDouble(
double d,
char * to);
127 void convertShortArray(
short * from,
char * to,
int len);
128 void convertInt32Array(int32_t * from,
char * to,
int len);
129 void convertFloatArray(
float * from,
char * to,
int len);
130 void convertDoubleArray(
double * from,
char * to,
int len);
139 void constructorCommon(
void);
141 void checkHeader(
void);
142 void writeBytesWithPadding(
const char *
const p,
const size_t nr);
145 friend class SoWriterefCounter;
146 void removeSoBase2IdRef(
const SoBase * base);
149 #endif // !COIN_SOOUTPUT_H
SbBool isToBuffer(void) const
Definition: SoOutput.cpp:1279
const Type * getArrayPtr(const int start=0) const
Definition: SbList.h:168
The SbName class stores strings by reference.
Definition: SbName.h:31
static SbString getDefaultBinaryHeader(void)
Definition: SoOutput.cpp:696
virtual void setBinary(const SbBool flag)
Definition: SoOutput.cpp:638
virtual SbBool getBuffer(void *&bufPointer, size_t &nBytes) const
Definition: SoOutput.cpp:590
virtual void write(const char c)
Definition: SoOutput.cpp:757
virtual void indent(void)
Definition: SoOutput.cpp:1074
virtual void closeFile(void)
Definition: SoOutput.cpp:426
void convertDoubleArray(double *from, char *to, int len)
Definition: SoOutput.cpp:1621
The SoOutput class is an abstraction of an output stream.
Definition: SoOutput.h:42
virtual void resetBuffer(void)
Definition: SoOutput.cpp:621
virtual void resetHeaderString(void)
Definition: SoOutput.cpp:673
Type pop(void)
Definition: SbList.h:161
virtual SbName getName(void) const
Definition: SoBase.cpp:730
virtual ~SoOutput()
Definition: SoOutput.cpp:345
static void postWarning(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:324
void setAnnotation(uint32_t bits)
Definition: SoOutput.cpp:1171
virtual SbBool openFile(const char *const fileName)
Definition: SoOutput.cpp:400
size_t bytesInBuf(void) const
Definition: SoOutput.cpp:1291
void convertShortArray(short *from, char *to, int len)
Definition: SoOutput.cpp:1579
void addRoute(SoFieldContainer *from, const SbName &fromfield, SoFieldContainer *to, const SbName &tofield)
Definition: SoOutput.cpp:1436
static const SbName * getAvailableCompressionMethods(unsigned int &num)
Definition: SoOutput.cpp:494
void append(const Type item)
Definition: SbList.h:98
virtual void reset(void)
Definition: SoOutput.cpp:1113
The SbString class is a string class with convenience functions for string operations.
Definition: SbString.h:42
void setCompact(SbBool flag)
Definition: SoOutput.cpp:1139
static SbString padHeader(const SbString &inString)
Definition: SoOutput.cpp:1634
Annotations
Definition: SoOutput.h:46
int findReference(const SoBase *base) const
Definition: SoOutput.cpp:1312
virtual void setBuffer(void *bufPointer, size_t initSize, SoOutputReallocCB *reallocFunc, int32_t offset=0)
Definition: SoOutput.cpp:572
int addReference(const SoBase *base)
Definition: SoOutput.cpp:1303
void push(const Type item)
Definition: SbList.h:157
The SoField class is the top-level abstract base class for fields.
Definition: SoField.h:38
virtual FILE * getFilePointer(void) const
Definition: SoOutput.cpp:384
virtual SbBool isBinary(void) const
Definition: SoOutput.cpp:650
The SbList class is a template container class for lists.
Definition: SoType.h:46
const char * getString(void) const
Definition: SbName.cpp:278
SbBool wroteHeader
Definition: SoOutput.h:134
static void postInfo(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:334
void convertInt32(int32_t l, char *to)
Definition: SoOutput.cpp:1539
int getLength(void) const
Definition: SbList.h:145
void convertShort(short s, char *to)
Definition: SoOutput.cpp:1526
The SoBase class is the top-level superclass for a number of class-hierarchies.
Definition: SoBase.h:41
void pushProto(SoProto *proto)
Definition: SoOutput.cpp:1376
uint32_t getAnnotation(void)
Definition: SoOutput.cpp:1190
void setReference(const SoBase *base, int refid)
Definition: SoOutput.cpp:1321
void resolveRoutes(void)
Definition: SoOutput.cpp:1457
void incrementIndent(const int levels=1)
Definition: SoOutput.cpp:1044
void convertFloat(float f, char *to)
Definition: SoOutput.cpp:1553
The SoFieldContainer class is a base class for all classes that contain fields.
Definition: SoFieldContainer.h:35
void convertFloatArray(float *from, char *to, int len)
Definition: SoOutput.cpp:1607
The SbDict class organizes a dictionary of keys and values.
Definition: SbDict.h:47
SbString & sprintf(const char *formatstr,...)
Definition: SbString.h:105
void remove(const int index)
Definition: SbList.h:129
void setStage(Stage stage)
Definition: SoOutput.cpp:728
SoProto * getCurrentProto(void) const
Definition: SoOutput.cpp:1395
virtual SoType getTypeId(void) const =0
Stage getStage(void) const
Definition: SoOutput.cpp:744
SbBool isCompact(void) const
Definition: SoOutput.cpp:1161
void removeDEFNode(SbName name)
Definition: SoOutput.cpp:1356
void decrementIndent(const int levels=1)
Definition: SoOutput.cpp:1055
SoOutput(void)
Definition: SoOutput.cpp:292
SbBool lookupDEFNode(SbName name)
Definition: SoOutput.cpp:1343
Stage
Definition: SoOutput.h:44
static SbString getDefaultASCIIHeader(void)
Definition: SoOutput.cpp:685
SbName getName(void) const
Definition: SoType.cpp:628
SbBool setCompression(const SbName &compmethod, const float level=0.5f)
Definition: SoOutput.cpp:459
int getLength(void) const
Definition: SbString.h:63
virtual void writeBinaryArray(const unsigned char *c, const int length)
Definition: SoOutput.cpp:973
SbBool makeRoomInBuf(size_t nBytes)
Definition: SoOutput.cpp:1206
const char * getString(void) const
Definition: SbString.h:71
void convertDouble(double d, char *to)
Definition: SoOutput.cpp:1567
virtual void setFilePointer(FILE *newFP)
Definition: SoOutput.cpp:364
void addDEFNode(SbName name)
Definition: SoOutput.cpp:1331
void convertInt32Array(int32_t *from, char *to, int len)
Definition: SoOutput.cpp:1593
void popProto(void)
Definition: SoOutput.cpp:1415
virtual size_t getBufferSize(void) const
Definition: SoOutput.cpp:607
virtual void setHeaderString(const SbString &str)
Definition: SoOutput.cpp:661
virtual void setFloatPrecision(const int precision)
Definition: SoOutput.cpp:707
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Jul 27 2020 for Coin by Doxygen. 1.8.18