sio2_resource.h File Reference

#include "unzip.h"

Include dependency graph for sio2_resource.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SIO2resource

Enumerations

enum  SIO2_RESOURCE_TYPE {
  SIO2_OBJECT = 0, SIO2_MATERIAL, SIO2_LAMP, SIO2_CAMERA,
  SIO2_IMAGE, SIO2_SOUNDBUFFER, SIO2_SCRIPT, SIO2_IPO,
  SIO2_CONSTRAINT, SIO2_ACTION, SIO2_VIDEO, SIO2_SOUND,
  SIO2_WIDGET, SIO2_PHYSIC, SIO2_SENSOR, SIO2_EMITTER,
  SIO2_MIST, SIO2_FONT, SIO2_TIMER, SIO2_URL,
  SIO2_RESOURCE_ALL
}
enum  SIO2_RESOURCE_MASK {
  SIO2_RENDER_SOLID_OBJECT = ( 1 << 0 ), SIO2_RENDER_TRANSPARENT_OBJECT = ( 1 << 1 ), SIO2_RENDER_ALPHA_TESTED_OBJECT = ( 1 << 2 ), SIO2_RENDER_NO_MATERIAL = ( 1 << 3 ),
  SIO2_RENDER_CLIPPED_OBJECT = ( 1 << 5 ), SIO2_RENDER_LAMP = ( 1 << 6 ), SIO2_RENDER_EMITTER = ( 1 << 7 ), SIO2_RENDER_IPO = ( 1 << 8 ),
  SIO2_EVALUATE_SENSOR = ( 1 << 9 ), SIO2_EVALUATE_TIMER = ( 1 << 10 ), SIO2_UPDATE_SOUND_STREAM = ( 1 << 11 ), SIO2_UPDATE_SOUND_SOURCE = ( 1 << 12 ),
  SIO2_SORT_SOLID_OBJECTS = ( 1 << 13 ), SIO2_SORT_ALPHA_TESTED_OBJECTS = ( 1 << 14 )
}

Functions

typedef void (SIO2resourcecustomload(SIO2stream *))
SIO2resourcesio2ResourceInit (char *)
SIO2resourcesio2ResourceFree (SIO2resource *)
void sio2ResourceAdd (SIO2resource *, unsigned char, void *)
void sio2ResourceDel (SIO2resource *, unsigned char, void *)
void sio2ResourceUnload (SIO2resource *, unsigned char)
void sio2ResourceUnloadAll (SIO2resource *)
void sio2ResourceUpdateAllWidgetBoundaries (SIO2resource *)
void sio2ResourceDispatchEvents (SIO2resource *, SIO2window *, SIO2touch *)
void * sio2ResourceGet (SIO2resource *, unsigned char, char *)
unsigned char sio2ResourceOpen (SIO2resource *, const char *, unsigned char)
void sio2ResourceClose (SIO2resource *)
void sio2ResourceCreateDictionary (SIO2resource *)
void sio2ResourceAddEntry (SIO2resource *, const char *, SIO2parsercallback *, SIO2parsercallback *)
unsigned char sio2ResourceExtractFile (SIO2resource *, SIO2stream *, const char *, char *)
void sio2ResourceExtract (SIO2resource *, char *)
SIO2streamsio2ResourceDispatchStream (SIO2resource *, SIO2stream *)
void sio2ResourceBindAllImages (SIO2resource *)
void sio2ResourceBindImage (SIO2resource *, SIO2material *)
void sio2ResourceBindObjectIpo (SIO2resource *, SIO2object *)
void sio2ResourceBindCameraIpo (SIO2resource *, SIO2camera *)
void sio2ResourceBindLampIpo (SIO2resource *, SIO2lamp *)
void sio2ResourceBindAllIpos (SIO2resource *)
void sio2ResourceBindAllSoundBuffers (SIO2resource *)
void sio2ResourceBindSoundBuffer (SIO2resource *, SIO2material *)
void sio2ResourceBindAllMaterials (SIO2resource *_SIO2resource)
void sio2ResourceBindMaterial (SIO2resource *, SIO2object *)
void sio2ResourceBindAllInstances (SIO2resource *)
void sio2ResourceBindAllMatrix (SIO2resource *)
void sio2ResourceBindInstance (SIO2resource *, SIO2object *)
void sio2ResourceBindAllPhysicObjects (SIO2resource *, SIO2physic *)
void sio2ResourceBindAllConstraintsObjects (SIO2resource *)
void sio2ResourceBindConstraintObject (SIO2resource *, SIO2constraint *)
void sio2ResourceBindAllPhysicConstraints (SIO2resource *, SIO2physic *)
void sio2ResourceGenId (SIO2resource *)
void sio2ResourceCompileAllScripts (SIO2resource *)
void sio2ResourceBindAllSounds (SIO2resource *)
void sio2ResourceRender (SIO2resource *, SIO2window *, SIO2camera *, SIO2physic *, int)
SIO2objectsio2ResourceSelect3D (SIO2resource *, SIO2window *, SIO2camera *, vec2 *)
void sio2ResourceSetAmbientVolume (SIO2resource *, SIO2window *)
void sio2ResourceSetFxVolume (SIO2resource *, SIO2window *)
void sio2ResourceCull (SIO2resource *, SIO2camera *)
static void sio2ResourceCancelEvents (SIO2resource *_SIO2resource)
static SIO2imagesio2ResourceGetImage (SIO2resource *_SIO2resource, char *_name)
static SIO2widgetsio2ResourceGetWidget (SIO2resource *_SIO2resource, char *_name)
static SIO2camerasio2ResourceGetCamera (SIO2resource *_SIO2resource, char *_name)
static SIO2materialsio2ResourceGetMaterial (SIO2resource *_SIO2resource, char *_name)
static SIO2soundbuffersio2ResourceGetSoundBuffer (SIO2resource *_SIO2resource, char *_name)
static SIO2soundsio2ResourceGetSound (SIO2resource *_SIO2resource, char *_name)
static SIO2videosio2ResourceGetVideo (SIO2resource *_SIO2resource, char *_name)
static SIO2objectsio2ResourceGetObject (SIO2resource *_SIO2resource, char *_name)
static SIO2physicsio2ResourceGetPhysic (SIO2resource *_SIO2resource, char *_name)
static SIO2sensorsio2ResourceGetSensor (SIO2resource *_SIO2resource, char *_name)
static SIO2emittersio2ResourceGetEmitter (SIO2resource *_SIO2resource, char *_name)
static SIO2mistsio2ResourceGetMist (SIO2resource *_SIO2resource, char *_name)
static SIO2fontsio2ResourceGetFont (SIO2resource *_SIO2resource, char *_name)
static SIO2lampsio2ResourceGetLamp (SIO2resource *_SIO2resource, char *_name)
static SIO2scriptsio2ResourceGetScript (SIO2resource *_SIO2resource, char *_name)
static SIO2iposio2ResourceGetIpo (SIO2resource *_SIO2resource, char *_name)
static SIO2constraintsio2ResourceGetConstraint (SIO2resource *_SIO2resource, char *_name)
static SIO2actionsio2ResourceGetAction (SIO2resource *_SIO2resource, char *_name)
static SIO2timersio2ResourceGetTimer (SIO2resource *_SIO2resource, char *_name)
static SIO2urlsio2ResourceGetUrl (SIO2resource *_SIO2resource, char *_name)


Enumeration Type Documentation

Enumerator:
SIO2_RENDER_SOLID_OBJECT  Render all the visible solid objects using its SIO2transform matrix in the order they appear in the SIO2resource.
SIO2_RENDER_TRANSPARENT_OBJECT  Render all the visible transparent objects its SIO2transform matrix sorting them by distance back to front.
SIO2_RENDER_ALPHA_TESTED_OBJECT  Render all the visible alpha tested object its SIO2transform matrix in the order they appear in the SIO2resource.
SIO2_RENDER_NO_MATERIAL  Render the objects without materials.
SIO2_RENDER_CLIPPED_OBJECT  Update the information (such as IPO and physic matrix information).
SIO2_RENDER_LAMP  Render all the visible SIO2lamp (max 8).
SIO2_RENDER_EMITTER  Render all the visible emitters.
SIO2_RENDER_IPO  Update all IPO information.
SIO2_EVALUATE_SENSOR  Process the different SIO2sensor information.
SIO2_EVALUATE_TIMER  Update the SIO2timer values.
SIO2_UPDATE_SOUND_STREAM  Update the SIO2soundbuffer buffer information.
SIO2_UPDATE_SOUND_SOURCE  Update the SIO2sound source for positional sound.
SIO2_SORT_SOLID_OBJECTS  Sort visible solid object performing an early Z-culling.
SIO2_SORT_ALPHA_TESTED_OBJECTS  Sort alpha tested solid object performing an early Z-culling.

Enumerator:
SIO2_OBJECT 
SIO2_MATERIAL 
SIO2_LAMP 
SIO2_CAMERA 
SIO2_IMAGE 
SIO2_SOUNDBUFFER 
SIO2_SCRIPT 
SIO2_IPO 
SIO2_CONSTRAINT 
SIO2_ACTION 
SIO2_VIDEO 
SIO2_SOUND 
SIO2_WIDGET 
SIO2_PHYSIC 
SIO2_SENSOR 
SIO2_EMITTER 
SIO2_MIST 
SIO2_FONT 
SIO2_TIMER 
SIO2_URL 
SIO2_RESOURCE_ALL 


Function Documentation

void sio2ResourceAdd ( SIO2resource _SIO2resource,
unsigned char  _type,
void *  _ptr 
)

Add a new resource pointer to the SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_type: A valid SIO2 resource type index. ( SIO2_RESOURCE_TYPE )
_ptr: The pointer of the resource to be added.

References SIO2resource::_SIO2action, SIO2resource::_SIO2camera, SIO2resource::_SIO2constraint, SIO2resource::_SIO2emitter, SIO2resource::_SIO2font, SIO2resource::_SIO2image, SIO2resource::_SIO2ipo, SIO2resource::_SIO2lamp, SIO2resource::_SIO2material, SIO2resource::_SIO2mist, SIO2resource::_SIO2object, SIO2resource::_SIO2physic, SIO2resource::_SIO2script, SIO2resource::_SIO2sensor, SIO2resource::_SIO2sound, SIO2resource::_SIO2soundbuffer, SIO2resource::_SIO2timer, SIO2resource::_SIO2url, SIO2resource::_SIO2video, SIO2resource::_SIO2widget, SIO2resource::n_action, SIO2resource::n_camera, SIO2resource::n_constraint, SIO2resource::n_emitter, SIO2resource::n_font, SIO2resource::n_image, SIO2resource::n_ipo, SIO2resource::n_lamp, SIO2resource::n_material, SIO2resource::n_mist, SIO2resource::n_object, SIO2resource::n_physic, SIO2resource::n_script, SIO2resource::n_sensor, SIO2resource::n_sound, SIO2resource::n_soundbuffer, SIO2resource::n_timer, SIO2resource::n_url, SIO2resource::n_video, SIO2resource::n_widget, SIO2_ACTION, SIO2_CAMERA, SIO2_CONSTRAINT, SIO2_EMITTER, SIO2_FONT, SIO2_IMAGE, SIO2_IPO, SIO2_LAMP, SIO2_MATERIAL, SIO2_MIST, SIO2_OBJECT, SIO2_PHYSIC, SIO2_SCRIPT, SIO2_SENSOR, SIO2_SOUND, SIO2_SOUNDBUFFER, SIO2_TIMER, SIO2_URL, SIO2_VIDEO, and SIO2_WIDGET.

Referenced by sio2ActionInit(), sio2CameraInit(), sio2ConstraintInit(), sio2EmitterInit(), sio2FontInit(), sio2ImageInit(), sio2IpoInit(), sio2LampInit(), sio2MaterialInit(), sio2MistInit(), sio2ObjectInit(), sio2PhysicInit(), sio2ScriptInit(), sio2SensorInitCollision(), sio2SensorInitContact(), sio2SensorInitDistance(), sio2SensorInitRay(), sio2SoundBufferInit(), sio2SoundInit(), sio2TimerInit(), sio2UrlInit(), sio2VideoInit(), and sio2WidgetInit().

void sio2ResourceAddEntry ( SIO2resource _SIO2resource,
const char _str,
SIO2parsercallback *  _root,
SIO2parsercallback *  _custom 
)

Helper function use to create the necessary SIO2entry information that we are going to need to parse the multiple SIO2 files. You can also use your own variant of this function for your own parser.

_SIO2resource: A valid SIO2resource pointer.
_str: The string token to use as root.
_root: The function callback to call when the root is found.
_custom: The function callback to call if the root tag cannot be found.

References SIO2resource::_SIO2entry, SIO2entry::custom, SIO2resource::n_entry, SIO2entry::root, sio2StringCpy(), and SIO2entry::str.

Referenced by sio2ResourceCreateDictionary().

Here is the call graph for this function:

void sio2ResourceBindAllConstraintsObjects ( SIO2resource _SIO2resource  ) 

Bind all constraints to their respective objects.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2constraint, SIO2resource::n_constraint, and sio2ResourceBindConstraintObject().

Here is the call graph for this function:

void sio2ResourceBindAllImages ( SIO2resource _SIO2resource  ) 

Bind all SIO2image to their respective SIO2material.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2material, SIO2resource::n_material, and sio2ResourceBindImage().

Here is the call graph for this function:

void sio2ResourceBindAllInstances ( SIO2resource _SIO2resource  ) 

Bind all SIO2object instances.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2object, SIO2resource::n_object, and sio2ResourceBindInstance().

Here is the call graph for this function:

void sio2ResourceBindAllIpos ( SIO2resource _SIO2resource  ) 

Bind all IPOs to the appropriate type of resource.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2camera, SIO2resource::_SIO2lamp, SIO2resource::_SIO2object, SIO2resource::n_camera, SIO2resource::n_lamp, SIO2resource::n_object, sio2ResourceBindCameraIpo(), sio2ResourceBindLampIpo(), and sio2ResourceBindObjectIpo().

Here is the call graph for this function:

void sio2ResourceBindAllMaterials ( SIO2resource _SIO2resource  ) 

Bind all SIO2material to their respective SIO2object.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2object, SIO2resource::n_object, and sio2ResourceBindMaterial().

Here is the call graph for this function:

void sio2ResourceBindAllMatrix ( SIO2resource _SIO2resource  ) 

Pre-calculate all the SIO2transform matrix for every SIO2object.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2object, SIO2object::_SIO2transform, SIO2resource::n_object, and sio2TransformBindMatrix().

Here is the call graph for this function:

void sio2ResourceBindAllPhysicConstraints ( SIO2resource _SIO2resource,
SIO2physic _SIO2physic 
)

Bind all SIO2constraints to a specific SIO2physic world.

_SIO2resource: A valid SIO2resource pointer.
_SIO2physic: A valid SIO2physic pointer.

References SIO2resource::_SIO2constraint, SIO2resource::n_constraint, and sio2PhysicAddConstraint().

Here is the call graph for this function:

void sio2ResourceBindAllPhysicObjects ( SIO2resource _SIO2resource,
SIO2physic _SIO2physic 
)

Add all physic object contained in an SIO2resource to a specific SIO2physic world.

_SIO2resource: A valid SIO2resource pointer.
_SIO2physic: A valid SIO2physic pointer.

References SIO2resource::_SIO2object, SIO2object::flags, SIO2resource::n_object, SIO2_OBJECT_ACTOR, SIO2_OBJECT_GHOST, sio2IsStateEnabled(), and sio2PhysicAddObject().

Here is the call graph for this function:

void sio2ResourceBindAllSoundBuffers ( SIO2resource _SIO2resource  ) 

Bind all SIO2soundbuffer to their associated SIO2material.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2material, SIO2resource::n_material, and sio2ResourceBindSoundBuffer().

Here is the call graph for this function:

void sio2ResourceBindAllSounds ( SIO2resource _SIO2resource  ) 

Bind all SIO2sound source to their respective SIO2object.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2object, SIO2::_SIO2resource, SIO2resource::n_object, sio2, and sio2ObjectBindSound().

Here is the call graph for this function:

void sio2ResourceBindCameraIpo ( SIO2resource _SIO2resource,
SIO2camera _SIO2camera 
)

Bind the associated IPO for a specific SIO2camera.

_SIO2resource: A valid SIO2resource pointer. To get the IPO.
_SIO2camera: A valid SIO2camera pointer.

References SIO2camera::_SIO2ipo, SIO2camera::_SIO2transform, SIO2camera::iponame, sio2IpoReset(), and sio2ResourceGetIpo().

Referenced by sio2ResourceBindAllIpos().

Here is the call graph for this function:

void sio2ResourceBindConstraintObject ( SIO2resource _SIO2resource,
SIO2constraint _SIO2constraint 
)

Attach the rigid body information to a specific SIO2constraint.

_SIO2resource: A valid SIO2resource pointer.
_SIO2constraint: A valid SIO2constraint pointer.

References SIO2objectphysic::_btRigidBody, SIO2constraint::_btRigidBody0, SIO2constraint::_btRigidBody1, SIO2object::_SIO2objectphysic, SIO2constraint::body0, SIO2constraint::body1, and sio2ResourceGetObject().

Referenced by sio2ResourceBindAllConstraintsObjects().

Here is the call graph for this function:

void sio2ResourceBindImage ( SIO2resource _SIO2resource,
SIO2material _SIO2material 
)

Bind all specific SIO2image to a SIO2material.

_SIO2resource: A valid SIO2resource pointer.
_SIO2material: The SIO2material to link the SIO2image(s) with.

References SIO2material::_SIO2image, SIO2_MATERIAL_MAX_CHANNEL, sio2ResourceGetImage(), and SIO2material::tname.

Referenced by sio2ResourceBindAllImages().

Here is the call graph for this function:

void sio2ResourceBindInstance ( SIO2resource _SIO2resource,
SIO2object _SIO2object 
)

Bind an instance for a single SIO2object.

_SIO2resource: A valid SIO2resource pointer.
_SIO2object: A valid SIO2object pointer.

References SIO2object::_SIO2instance, SIO2object::instname, and sio2ResourceGetObject().

Referenced by sio2ResourceBindAllInstances().

Here is the call graph for this function:

void sio2ResourceBindLampIpo ( SIO2resource _SIO2resource,
SIO2lamp _SIO2lamp 
)

Bind the associated IPO for a specific SIO2camera.

_SIO2resource: A valid SIO2resource pointer. To get the IPO.
_SIO2lamp: A valid SIO2lamp pointer.

References SIO2lamp::_SIO2ipo, SIO2lamp::_SIO2transform, SIO2lamp::iponame, sio2IpoReset(), and sio2ResourceGetIpo().

Referenced by sio2ResourceBindAllIpos().

Here is the call graph for this function:

void sio2ResourceBindMaterial ( SIO2resource _SIO2resource,
SIO2object _SIO2object 
)

Bind a single SIO2material to its respective SIO2object.

_SIO2resource: A valid SIO2resource pointer.
_SIO2object: A valid SIO2object pointer.

References SIO2vertexgroup::_SIO2material, SIO2object::_SIO2vertexgroup, SIO2vertexgroup::mname, SIO2object::n_vgroup, and sio2ResourceGetMaterial().

Referenced by sio2ResourceBindAllMaterials().

Here is the call graph for this function:

void sio2ResourceBindObjectIpo ( SIO2resource _SIO2resource,
SIO2object _SIO2object 
)

Bind the associated IPO for a specific SIO2object.

_SIO2resource: A valid SIO2resource pointer. To get the IPO.
_SIO2object: A valid SIO2object pointer.

References SIO2object::_SIO2ipo, SIO2object::_SIO2transform, SIO2object::iponame, sio2IpoReset(), and sio2ResourceGetIpo().

Referenced by sio2ResourceBindAllIpos().

Here is the call graph for this function:

void sio2ResourceBindSoundBuffer ( SIO2resource _SIO2resource,
SIO2material _SIO2material 
)

Bind all the SIO2soundbuffer associated to a specific SIO2material.

_SIO2resource: A valid SIO2resource pointer.
_SIO2material: A valid SIO2material pointer.

References SIO2material::_SIO2soundbuffer, SIO2material::sbname, SIO2_MATERIAL_MAX_SOUNDBUFFER, and sio2ResourceGetSoundBuffer().

Referenced by sio2ResourceBindAllSoundBuffers().

Here is the call graph for this function:

static void sio2ResourceCancelEvents ( SIO2resource _SIO2resource  )  [inline, static]

Request to cancel the events queue.

_SIO2resource: A valid SIO2resource pointer, set to receive events.

References SIO2resource::cancel_events.

void sio2ResourceClose ( SIO2resource _SIO2resource  ) 

Close a .sio2 file.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::uf.

void sio2ResourceCompileAllScripts ( SIO2resource _SIO2resource  ) 

Compile all the LUA script associated within a specific SIO2resource.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2script, SIO2script::compiled, SIO2resource::n_script, and sio2ScriptCompile().

Here is the call graph for this function:

void sio2ResourceCreateDictionary ( SIO2resource _SIO2resource  ) 

Create the necessary SIO2entry to feed the parser by creating a dictionnary of the SIO2 tags to use while loading the different SIO2 file type.

_SIO2resource: A valid SIO2resource pointer.

References sio2ActionLoad(), sio2CameraLoad(), sio2ConstraintLoad(), sio2IpoLoad(), sio2LampLoad(), sio2MaterialLoad(), sio2ObjectLoad(), and sio2ResourceAddEntry().

Here is the call graph for this function:

void sio2ResourceCull ( SIO2resource _SIO2resource,
SIO2camera _SIO2camera 
)

Calculate the distance within the SIO2camera frustum for the SIO2lamp, SIO2object and SIO2emitter for a specific SIO2resource using the frustum of the SIO2camera information passed in parameter.

_SIO2resource: A valid SIO2resource pointer.
_SIO2camera: A valid SIO2camera pointer. With the current perspective, projection and modelview matrix updated.

References SIO2resource::_SIO2emitter, SIO2resource::_SIO2object, SIO2emitter::_SIO2transform, SIO2object::_SIO2transform, SIO2emitter::dst, SIO2object::dst, SIO2transform::loc, SIO2resource::n_emitter, SIO2resource::n_object, SIO2emitter::rad, SIO2object::rad, and sio2CameraSphereDistInFrustum().

Here is the call graph for this function:

void sio2ResourceDel ( SIO2resource _SIO2resource,
unsigned char  _type,
void *  _ptr 
)

Remove a previously added resource pointer.

_SIO2resource: A valid SIO2resouce pointer.
_type: A valid SIO2 resource type index. ( SIO2_RESOURCE_TYPE )
_ptr: The pointer of the resource to be deleted.

References SIO2resource::_SIO2action, SIO2resource::_SIO2camera, SIO2resource::_SIO2constraint, SIO2resource::_SIO2emitter, SIO2resource::_SIO2font, SIO2resource::_SIO2image, SIO2resource::_SIO2ipo, SIO2resource::_SIO2lamp, SIO2resource::_SIO2material, SIO2resource::_SIO2mist, SIO2resource::_SIO2object, SIO2resource::_SIO2physic, SIO2resource::_SIO2script, SIO2resource::_SIO2sensor, SIO2resource::_SIO2sound, SIO2resource::_SIO2soundbuffer, SIO2resource::_SIO2timer, SIO2resource::_SIO2url, SIO2resource::_SIO2video, SIO2resource::_SIO2widget, SIO2resource::n_action, SIO2resource::n_camera, SIO2resource::n_constraint, SIO2resource::n_emitter, SIO2resource::n_font, SIO2resource::n_image, SIO2resource::n_ipo, SIO2resource::n_lamp, SIO2resource::n_material, SIO2resource::n_mist, SIO2resource::n_object, SIO2resource::n_physic, SIO2resource::n_script, SIO2resource::n_sensor, SIO2resource::n_sound, SIO2resource::n_soundbuffer, SIO2resource::n_timer, SIO2resource::n_url, SIO2resource::n_video, SIO2resource::n_widget, SIO2_ACTION, SIO2_CAMERA, SIO2_CONSTRAINT, SIO2_EMITTER, SIO2_FONT, SIO2_IMAGE, SIO2_IPO, SIO2_LAMP, SIO2_MATERIAL, SIO2_MIST, SIO2_OBJECT, SIO2_PHYSIC, SIO2_SCRIPT, SIO2_SENSOR, SIO2_SOUND, SIO2_SOUNDBUFFER, SIO2_TIMER, SIO2_URL, SIO2_VIDEO, and SIO2_WIDGET.

Referenced by sio2ActionFree(), sio2CameraFree(), sio2ConstraintFree(), sio2EmitterFree(), sio2FontFree(), sio2ImageFree(), sio2IpoFree(), sio2LampFree(), sio2MaterialFree(), sio2MistFree(), sio2ObjectFree(), sio2PhysicFree(), sio2ScriptFree(), sio2SensorFree(), sio2SoundBufferFree(), sio2SoundFree(), sio2TimerFree(), sio2UrlFree(), sio2VideoFree(), and sio2WidgetFree().

void sio2ResourceDispatchEvents ( SIO2resource _SIO2resource,
SIO2window _SIO2window,
SIO2touch _SIO2touch 
)

SIO2stream* sio2ResourceDispatchStream ( SIO2resource _SIO2resource,
SIO2stream _SIO2stream 
)

Dispatch the current file from the archive to be filtered by the SIO2resource dictionnary and dispatch the stream to the appropriate function callback.

_SIO2resource: A valid SIO2resource pointer.
_SIO2stream: The SIO2stream containing the data to be parsed.

return the value of the SIO2stream passed in parameter. Depending on the type of resource the SIO2stream might be flushed by the loader of this resource.

References SIO2resource::_SIO2entry, SIO2::_SIO2resource, SIO2resource::_SIO2resourcecustomload, SIO2stream::buf, SIO2stream::fname, SIO2resource::n_entry, sio2, SIO2_ARCHIVE_TYPE, SIO2_CAMERA, SIO2_CONSTRAINT, SIO2_IMAGE, SIO2_IPO, SIO2_LAMP, SIO2_MATERIAL, SIO2_OBJECT, SIO2_RESOURCE_PATH, SIO2_SCRIPT, SIO2_SOUNDBUFFER, sio2ImageInit(), sio2ImageLoad(), sio2ScriptInit(), sio2ScriptLoad(), sio2SoundBufferInit(), sio2SoundBufferLoad(), sio2StreamParse(), sio2StringTok(), and SIO2stream::size.

Referenced by sio2ResourceExtract().

Here is the call graph for this function:

void sio2ResourceExtract ( SIO2resource _SIO2resource,
char _password 
)

Extract file(s) sequentially, and move the file pointer to the next file within the archive.

_SIO2resource: A valid SIO2resource pointer.
_password: The password to use to decrypt the file(s).

References SIO2stream::buf, SIO2stream::cur, SIO2_MAX_CHAR, sio2ResourceDispatchStream(), sio2StreamClose(), sio2StreamInit(), SIO2stream::size, and SIO2resource::uf.

Here is the call graph for this function:

unsigned char sio2ResourceExtractFile ( SIO2resource _SIO2resource,
SIO2stream _SIO2stream,
const char _fname,
char _password 
)

Extract a specific file from the archive.

_SIO2resource: A valid SIO2resource pointer.
_SIO2stream: A valid SIO2stream pointer, if the file is loaded the content of the extracted file will be available in the SIO2stream->buf.
_fname: The full filename path within the archive.
_password: If the file is encrypted use this password to decrypt the file.

References SIO2stream::buf, SIO2stream::cur, SIO2stream::fname, SIO2stream::pos, SIO2_MAX_CHAR, SIO2stream::size, and SIO2resource::uf.

SIO2resource* sio2ResourceFree ( SIO2resource _SIO2resource  ) 

void sio2ResourceGenId ( SIO2resource _SIO2resource  ) 

void* sio2ResourceGet ( SIO2resource _SIO2resource,
unsigned char  _type,
char _name 
)

Get the pointer of a specific SIO2 resource type.

_SIO2resource: A valid SIO2resource pointer.
_type: A valid SIO2 resource type index. ( SIO2_RESOURCE_TYPE )
_name: The full name of the resource.

References SIO2resource::_SIO2action, SIO2resource::_SIO2camera, SIO2resource::_SIO2constraint, SIO2resource::_SIO2emitter, SIO2resource::_SIO2font, SIO2resource::_SIO2image, SIO2resource::_SIO2ipo, SIO2resource::_SIO2lamp, SIO2resource::_SIO2material, SIO2resource::_SIO2mist, SIO2resource::_SIO2object, SIO2resource::_SIO2physic, SIO2resource::_SIO2script, SIO2resource::_SIO2sensor, SIO2resource::_SIO2sound, SIO2resource::_SIO2soundbuffer, SIO2resource::_SIO2timer, SIO2resource::_SIO2url, SIO2resource::_SIO2video, SIO2resource::_SIO2widget, SIO2resource::n_action, SIO2resource::n_camera, SIO2resource::n_constraint, SIO2resource::n_emitter, SIO2resource::n_font, SIO2resource::n_image, SIO2resource::n_ipo, SIO2resource::n_lamp, SIO2resource::n_material, SIO2resource::n_mist, SIO2resource::n_object, SIO2resource::n_physic, SIO2resource::n_script, SIO2resource::n_sensor, SIO2resource::n_sound, SIO2resource::n_soundbuffer, SIO2resource::n_timer, SIO2resource::n_url, SIO2resource::n_video, SIO2resource::n_widget, SIO2url::name, SIO2timer::name, SIO2action::name, SIO2constraint::name, SIO2ipo::name, SIO2script::name, SIO2lamp::name, SIO2font::name, SIO2mist::name, SIO2emitter::name, SIO2sensor::name, SIO2physic::name, SIO2object::name, SIO2video::name, SIO2sound::name, SIO2soundbuffer::name, SIO2material::name, SIO2widget::name, SIO2camera::name, SIO2image::name, SIO2_ACTION, SIO2_CAMERA, SIO2_CONSTRAINT, SIO2_EMITTER, SIO2_FONT, SIO2_IMAGE, SIO2_IPO, SIO2_LAMP, SIO2_MATERIAL, SIO2_MIST, SIO2_OBJECT, SIO2_PHYSIC, SIO2_SCRIPT, SIO2_SENSOR, SIO2_SOUND, SIO2_SOUNDBUFFER, SIO2_TIMER, SIO2_URL, SIO2_VIDEO, SIO2_WIDGET, and sio2StringCmp().

Referenced by sio2ResourceGetAction(), sio2ResourceGetCamera(), sio2ResourceGetConstraint(), sio2ResourceGetEmitter(), sio2ResourceGetFont(), sio2ResourceGetImage(), sio2ResourceGetIpo(), sio2ResourceGetLamp(), sio2ResourceGetMaterial(), sio2ResourceGetMist(), sio2ResourceGetObject(), sio2ResourceGetPhysic(), sio2ResourceGetScript(), sio2ResourceGetSensor(), sio2ResourceGetSound(), sio2ResourceGetSoundBuffer(), sio2ResourceGetTimer(), sio2ResourceGetUrl(), sio2ResourceGetVideo(), and sio2ResourceGetWidget().

Here is the call graph for this function:

static SIO2action* sio2ResourceGetAction ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2action pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2action to retrieve.

References SIO2_ACTION, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2camera* sio2ResourceGetCamera ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2camera pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2camera to retrieve.

References SIO2_CAMERA, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2constraint* sio2ResourceGetConstraint ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2constraint pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2constraint to retrieve.

References SIO2_CONSTRAINT, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2emitter* sio2ResourceGetEmitter ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2emitter pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2emitter to retrieve.

References SIO2_EMITTER, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2font* sio2ResourceGetFont ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2font pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2font to retrieve.

References SIO2_FONT, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2image* sio2ResourceGetImage ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2image pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2image to retrieve. (ex: "image/test.tga" )

References SIO2_IMAGE, and sio2ResourceGet().

Referenced by sio2ResourceBindImage().

Here is the call graph for this function:

static SIO2ipo* sio2ResourceGetIpo ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2ipo pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2ipo to retrieve.

References SIO2_IPO, and sio2ResourceGet().

Referenced by sio2ResourceBindCameraIpo(), sio2ResourceBindLampIpo(), and sio2ResourceBindObjectIpo().

Here is the call graph for this function:

static SIO2lamp* sio2ResourceGetLamp ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2lamp pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2lamp to retrieve.

References SIO2_LAMP, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2material* sio2ResourceGetMaterial ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2material pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2material to retrieve.

References SIO2_MATERIAL, and sio2ResourceGet().

Referenced by sio2ResourceBindMaterial().

Here is the call graph for this function:

static SIO2mist* sio2ResourceGetMist ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2mist pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2mist to retrieve.

References SIO2_MIST, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2object* sio2ResourceGetObject ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2object pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2object to retrieve.

References SIO2_OBJECT, and sio2ResourceGet().

Referenced by sio2ResourceBindConstraintObject(), and sio2ResourceBindInstance().

Here is the call graph for this function:

static SIO2physic* sio2ResourceGetPhysic ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2physic pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2physic to retrieve.

References SIO2_PHYSIC, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2script* sio2ResourceGetScript ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2script pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2script to retrieve.

References SIO2_SCRIPT, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2sensor* sio2ResourceGetSensor ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2sensor pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2sensor to retrieve.

References SIO2_SENSOR, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2sound* sio2ResourceGetSound ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2sound pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2sound to retrieve.

References SIO2_SOUND, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2soundbuffer* sio2ResourceGetSoundBuffer ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2soundbuffer pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2soundbuffer to retrieve.

References SIO2_SOUNDBUFFER, and sio2ResourceGet().

Referenced by sio2ResourceBindSoundBuffer().

Here is the call graph for this function:

static SIO2timer* sio2ResourceGetTimer ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2timer pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2timer to retrieve.

References SIO2_TIMER, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2url* sio2ResourceGetUrl ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2url pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2url to retrieve.

References SIO2_URL, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2video* sio2ResourceGetVideo ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2video pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2video to retrieve.

References SIO2_VIDEO, and sio2ResourceGet().

Here is the call graph for this function:

static SIO2widget* sio2ResourceGetWidget ( SIO2resource _SIO2resource,
char _name 
) [inline, static]

Get a SIO2widget pointer from a SIO2resource.

_SIO2resource: A valid SIO2resource pointer.
_name: The full name of the SIO2widget to retrieve.

References SIO2_WIDGET, and sio2ResourceGet().

Here is the call graph for this function:

SIO2resource* sio2ResourceInit ( char _name  ) 

Initialize a new SIO2resource pointer.

_name: The name to use for the resource.

return a new SIO2resource pointer.

References SIO2resource::name, and sio2StringCpy().

Here is the call graph for this function:

unsigned char sio2ResourceOpen ( SIO2resource _SIO2resource,
const char _fname,
unsigned char  _rel 
)

Open a .SIO2 file for loading.

_SIO2resource: A valid SIO2resource pointer.
_fname: The SIO2 (zip file) to open.
_rel: Specify if the file is relative to the application path or absolute.

return 1 or 0 if the file have been open succesfully.

References SIO2::_SIO2resource, SIO2::app_path, SIO2resource::gi, sio2, SIO2_MAX_PATH, and SIO2resource::uf.

void sio2ResourceRender ( SIO2resource _SIO2resource,
SIO2window _SIO2window,
SIO2camera _SIO2camera,
SIO2physic _SIO2physic,
int  _mask 
)

Render on screen a specific SIO2resource associated data.

_SIO2resource: A valid SIO2resource pointer.
_SIO2window: The SIO2window to sync the different time value with.
_SIO2camera: The SIO2camera to use for various operation such as billboarding etc...
_SIO2physic: The SIO2physic handle to use for evaluation physic sensors. NULL if none.
_mask: The flags (SIO2_RESOURCE_TYPE) that have to be used in order to render the SIO2resource.

References SIO2resource::_SIO2emitter, SIO2resource::_SIO2ipo, SIO2resource::_SIO2lamp, SIO2resource::_SIO2object, SIO2resource::_SIO2sensor, SIO2resource::_SIO2sound, SIO2resource::_SIO2timer, SIO2object::dst, SIO2lamp::dst, SIO2resource::n_emitter, SIO2resource::n_ipo, SIO2resource::n_lamp, SIO2resource::n_object, SIO2resource::n_sensor, SIO2resource::n_sound, SIO2resource::n_timer, SIO2_EVALUATE_SENSOR, SIO2_EVALUATE_TIMER, SIO2_LAMP_MAX, SIO2_OBJECT_ALPHA_TESTED, SIO2_OBJECT_SOLID, SIO2_OBJECT_TRANSPARENT, SIO2_PLAY, SIO2_RENDER_ALPHA_TESTED_OBJECT, SIO2_RENDER_CLIPPED_OBJECT, SIO2_RENDER_EMITTER, SIO2_RENDER_IPO, SIO2_RENDER_LAMP, SIO2_RENDER_NO_MATERIAL, SIO2_RENDER_SOLID_OBJECT, SIO2_RENDER_TRANSPARENT_OBJECT, SIO2_SORT_ALPHA_TESTED_OBJECTS, SIO2_SORT_SOLID_OBJECTS, SIO2_TRANSFORM_MATRIX_BIND, SIO2_UPDATE_SOUND_SOURCE, SIO2_UPDATE_SOUND_STREAM, sio2EmitterRender(), sio2EmitterReset(), sio2IpoRender(), sio2LampRender(), sio2ObjectRender(), sio2ObjectReset(), sio2SensorEvaluate(), sio2SoundUpdateStream(), sio2TimerEvaluate(), SIO2ipo::state, and SIO2object::type.

Here is the call graph for this function:

SIO2object* sio2ResourceSelect3D ( SIO2resource _SIO2resource,
SIO2window _SIO2window,
SIO2camera _SIO2camera,
vec2 _v 
)

Render a specific SIO2resource in selection mode. Basically a unique color will be applied on every object. Then using the XY position passed in parameter this function will retrieve the color picked and analyze which SIO2object is associated to it.

_SIO2resource: A valid SIO2resource pointer.
_SIO2window: The SIO2window to sync the different time value with.
_SIO2camera: The SIO2camera to use for various operation such as billboarding etc...
_v: The XY position in OpenGL screen space coordinate. (bottom left 0,0)

References SIO2resource::_SIO2object, col4::a, SIO2object::col, SIO2resource::n_object, sio2GenColorIndex(), sio2ObjectRender(), vec2::x, and vec2::y.

Here is the call graph for this function:

void sio2ResourceSetAmbientVolume ( SIO2resource _SIO2resource,
SIO2window _SIO2window 
)

Set the all the SIO2sound ambient source using the volume information of the SIO2window.

_SIO2resource: A valid SIO2resource pointer.
_SIO2window: A valid SIO2window pointer.

References SIO2resource::_SIO2sound, SIO2sound::flags, SIO2resource::n_sound, SIO2_CLAMP, SIO2_SOUND_AMBIENT, sio2ErrorAL(), sio2IsStateEnabled(), sio2SoundSetVolume(), and SIO2window::volume.

Here is the call graph for this function:

void sio2ResourceSetFxVolume ( SIO2resource _SIO2resource,
SIO2window _SIO2window 
)

Set the all the SIO2sound fx source using the volume information of the SIO2window.

_SIO2resource: A valid SIO2resource pointer.
_SIO2window: A valid SIO2window pointer.

References SIO2resource::_SIO2sound, SIO2sound::flags, SIO2window::fx_volume, SIO2resource::n_sound, SIO2_CLAMP, SIO2_SOUND_FX, sio2ErrorAL(), sio2IsStateEnabled(), and sio2SoundSetVolume().

Here is the call graph for this function:

void sio2ResourceUnload ( SIO2resource _SIO2resource,
unsigned char  _type 
)

Unload a specific SIO2 type of resource.

_SIO2resource: A valid SIO2resource pointer.
_type: A valid SIO2 resource type index. ( SIO2_RESOURCE_TYPE )

References SIO2resource::_SIO2action, SIO2resource::_SIO2camera, SIO2resource::_SIO2constraint, SIO2resource::_SIO2emitter, SIO2resource::_SIO2font, SIO2resource::_SIO2image, SIO2resource::_SIO2ipo, SIO2resource::_SIO2lamp, SIO2resource::_SIO2material, SIO2resource::_SIO2mist, SIO2resource::_SIO2object, SIO2resource::_SIO2physic, SIO2::_SIO2resource, SIO2resource::_SIO2script, SIO2resource::_SIO2sensor, SIO2resource::_SIO2sound, SIO2resource::_SIO2soundbuffer, SIO2resource::_SIO2timer, SIO2resource::_SIO2url, SIO2resource::_SIO2video, SIO2resource::_SIO2widget, SIO2resource::n_action, SIO2resource::n_camera, SIO2resource::n_constraint, SIO2resource::n_emitter, SIO2resource::n_font, SIO2resource::n_image, SIO2resource::n_ipo, SIO2resource::n_lamp, SIO2resource::n_material, SIO2resource::n_mist, SIO2resource::n_object, SIO2resource::n_physic, SIO2resource::n_script, SIO2resource::n_sensor, SIO2resource::n_sound, SIO2resource::n_soundbuffer, SIO2resource::n_timer, SIO2resource::n_url, SIO2resource::n_video, SIO2resource::n_widget, sio2, SIO2_ACTION, SIO2_CAMERA, SIO2_CONSTRAINT, SIO2_EMITTER, SIO2_FONT, SIO2_IMAGE, SIO2_IPO, SIO2_LAMP, SIO2_MATERIAL, SIO2_MIST, SIO2_OBJECT, SIO2_PHYSIC, SIO2_SCRIPT, SIO2_SENSOR, SIO2_SOUND, SIO2_SOUNDBUFFER, SIO2_TIMER, SIO2_URL, SIO2_VIDEO, SIO2_WIDGET, sio2ActionFree(), sio2CameraFree(), sio2ConstraintFree(), sio2EmitterFree(), sio2FontFree(), sio2ImageFree(), sio2IpoFree(), sio2LampFree(), sio2MaterialFree(), sio2MistFree(), sio2ObjectFree(), sio2PhysicFree(), sio2ScriptFree(), sio2SensorFree(), sio2SoundBufferFree(), sio2SoundFree(), sio2TimerFree(), sio2UrlFree(), sio2VideoFree(), and sio2WidgetFree().

Referenced by sio2ResourceUnloadAll().

Here is the call graph for this function:

void sio2ResourceUnloadAll ( SIO2resource _SIO2resource  ) 

Unload all resources contained in the SIO2resource.

_SIO2resource: A valid SIO2resource pointer.

References SIO2_RESOURCE_ALL, and sio2ResourceUnload().

Here is the call graph for this function:

void sio2ResourceUpdateAllWidgetBoundaries ( SIO2resource _SIO2resource  ) 

Calculate all SIO2widget boundaries.

_SIO2resource: A valid SIO2resource pointer.

References SIO2resource::_SIO2widget, SIO2resource::n_widget, and sio2WidgetUpdateBoundary().

Here is the call graph for this function:

typedef void ( SIO2resourcecustomload(SIO2stream *)   ) 


Generated on Thu Mar 4 15:41:48 2010 for SIO2 Engine by  doxygen 1.5.6