36 #include <Inventor/system/inttypes.h> 37 #include <Inventor/SbBasic.h> 38 #include <Inventor/lists/SbList.h> 43 #endif // COIN_INTERNAL 53 class SoInput_FileInfo;
68 void pushProto(
SoProto * proto);
69 SoProto * getCurrentProto(
void)
const;
72 void addRoute(
const SbName & fromnode,
const SbName & fromfield,
79 virtual void setFilePointer(FILE * newFP);
80 virtual SbBool openFile(
const char * fileName, SbBool okIfNotFound = FALSE);
81 virtual SbBool pushFile(
const char * fileName);
82 virtual void closeFile(
void);
83 virtual SbBool isValidFile(
void);
84 virtual SbBool isValidBuffer(
void);
85 virtual FILE * getCurFile(
void)
const;
86 virtual const char * getCurFileName(
void)
const;
87 virtual void setBuffer(
const void * bufpointer,
size_t bufsize);
88 void setStringArray(
const char * strings[]);
89 virtual size_t getNumBytesRead(
void)
const;
91 virtual float getIVVersion(
void);
92 virtual SbBool isBinary(
void);
94 virtual SbBool
get(
char & c);
95 virtual SbBool getASCIIBuffer(
char & c);
96 virtual SbBool getASCIIFile(
char & c);
97 virtual SbBool readHex(uint32_t & l);
98 virtual SbBool read(
char & c);
99 virtual SbBool read(
char & c, SbBool skip);
101 virtual SbBool read(
SbName & n, SbBool validIdent = FALSE);
102 virtual SbBool read(
int & i);
103 virtual SbBool read(
unsigned int & i);
104 virtual SbBool read(
short & s);
105 virtual SbBool read(
unsigned short & s);
106 virtual SbBool read(
float & f);
107 virtual SbBool read(
double & d);
108 virtual SbBool readByte(int8_t & b);
109 virtual SbBool readByte(uint8_t & b);
112 SbBool read(
long int & i);
113 SbBool read(
long unsigned int & i);
115 virtual SbBool readBinaryArray(
unsigned char * c,
int length);
116 virtual SbBool readBinaryArray(int32_t * l,
int length);
117 virtual SbBool readBinaryArray(
float * f,
int length);
118 virtual SbBool readBinaryArray(
double * d,
int length);
119 virtual SbBool eof(
void)
const;
121 SbBool isFileVRML1(
void);
122 SbBool isFileVRML2(
void);
123 virtual void resetFilePointer(FILE * fptr);
125 virtual void getLocationString(
SbString &
string)
const;
126 virtual void putBack(
const char c);
127 virtual void putBack(
const char * str);
128 virtual void addReference(
const SbName & name,
SoBase * base,
129 SbBool addToGlobalDict = TRUE);
130 virtual void removeReference(
const SbName & name);
131 virtual SoBase * findReference(
const SbName & name)
const;
133 static void addDirectoryFirst(
const char * dirName);
134 static void addDirectoryLast(
const char * dirName);
135 static void addEnvDirectoriesFirst(
const char * envVarName,
136 const char * separator =
":\t ");
137 static void addEnvDirectoriesLast(
const char * envVarName,
138 const char * separator =
":\t ");
139 static void removeDirectory(
const char * dirName);
140 static void clearDirectories(
void);
143 static void init(
void);
145 static SbString getPathname(
const char *
const filename);
147 static SbString getBasename(
const char *
const filename);
156 virtual SbBool popFile(
void);
157 void setIVVersion(
float version);
158 FILE * findFile(
const char * fileName,
SbString & fullName);
159 void initFile(FILE * newFP,
const char * fileName,
SbString * fullName,
160 SbBool openedHere,
SbDict * refDict = NULL);
161 SbBool checkHeader(SbBool bValidateBufferHeader = FALSE);
162 SbBool fromBuffer(
void)
const;
163 SbBool skipWhiteSpace(
void);
164 size_t freeBytesInBuf(
void)
const;
165 SbBool readInteger(int32_t & l);
166 SbBool readUnsignedInteger(uint32_t & l);
167 SbBool readReal(
double & d);
168 SbBool readUnsignedIntegerString(
char * str);
169 int readDigits(
char * str);
170 int readHexDigits(
char * str);
171 int readChar(
char * str,
char charToRead);
173 SbBool makeRoomInBuf(
size_t nBytes);
174 void convertShort(
char * from,
short * s);
175 void convertInt32(
char * from, int32_t * l);
176 void convertFloat(
char * from,
float * f);
177 void convertDouble(
char * from,
double * d);
178 void convertShortArray(
char * from,
short * to,
int len);
179 void convertInt32Array(
char * from, int32_t * to,
int len);
180 void convertFloatArray(
char * from,
float * to,
int len);
181 void convertDoubleArray(
char * from,
double * to,
int len);
182 SbBool isFileURL(
const char * url);
183 char * URLToFile(
char * out_buf,
const char * in_buf);
184 SbBool IsURL(
const char * c_strng);
190 friend class SoInputP;
192 static void clean(
void);
193 void constructorsCommon(
void);
195 static void addDirectoryIdx(
const int idx,
const char * dirName);
196 static void addEnvDirectoriesIdx(
int startidx,
const char * envVarName,
197 const char * separator);
201 SoInput_FileInfo * getTopOfStack(
void)
const {
202 return this->filestack[0];
208 #endif // !COIN_SOINPUT_H The SoBase class is the top-level superclass for a number of class-hierarchies.SoBase provides the ba...
Definition: SoBase.h:45
The SoDB class keeps track of internal global data.This class collects various methods for initializi...
Definition: SoDB.h:55
The SoFieldContainer class is a base class for all classes that contain fields.The classes containing...
Definition: SoFieldContainer.h:43
The SoField class is the top-level abstract base class for fields.Fields is the mechanism used throug...
Definition: SoField.h:47
The SbDict class organizes a dictionary of keys and values.It uses hashing to quickly insert and find...
Definition: SbDict.h:63
The SoProto class handles PROTO definitions.
Definition: SoProto.h:50
The SbTime class instances represents time values.SbTime is a convenient way of doing system independ...
Definition: SbTime.h:50
The SbString class is a string class with convenience functions for string operations.This is the class used for storing and working with character strings. It automatically takes care of supporting all the "bookkeeping" tasks usually associated with working with character strings, like memory allocation and deallocation etc.
Definition: SbString.h:52
The SbName class stores strings by reference.The class is used by Coin for storing keywords...
Definition: SbName.h:40
The SbStringList class is a container for arrays of SbString pointers.Note that upon using the equali...
Definition: SbStringList.h:40