zenilib  0.5.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lib3ds_file.c File Reference
#include "lib3ds_impl.h"

Go to the source code of this file.

Functions

static void ambient_read (Lib3dsFile *file, Lib3dsIo *io)
 
static void colorf_write (float rgb[3], Lib3dsIo *io)
 
static int compare_node_id (const void *a, const void *b)
 
static int compare_node_id2 (const void *a, const void *b)
 
static void file_bounding_box_of_nodes_impl (Lib3dsNode *node, Lib3dsFile *file, int include_meshes, int include_cameras, int include_lights, float bmin[3], float bmax[3], float matrix[4][4])
 
static void file_minmax_node_id_impl (Lib3dsFile *file, Lib3dsNode *node, uint16_t *min_id, uint16_t *max_id)
 
static size_t fileio_read_func (void *self, void *buffer, size_t size)
 
static long fileio_seek_func (void *self, long offset, Lib3dsIoSeek origin)
 
static long fileio_tell_func (void *self)
 
static size_t fileio_write_func (void *self, const void *buffer, size_t size)
 
static void kfdata_read (Lib3dsFile *file, Lib3dsIo *io)
 
static void kfdata_write (Lib3dsFile *file, Lib3dsIo *io)
 
void lib3ds_file_append_node (Lib3dsFile *file, Lib3dsNode *node, Lib3dsNode *parent)
 
void lib3ds_file_bounding_box_of_nodes (Lib3dsFile *file, int include_meshes, int include_cameras, int include_lights, float bmin[3], float bmax[3], float matrix[4][4])
 
void lib3ds_file_bounding_box_of_objects (Lib3dsFile *file, int include_meshes, int include_cameras, int include_lights, float bmin[3], float bmax[3])
 
int lib3ds_file_camera_by_name (Lib3dsFile *file, const char *name)
 
void lib3ds_file_create_nodes_for_meshes (Lib3dsFile *file)
 
void lib3ds_file_eval (Lib3dsFile *file, float t)
 
void lib3ds_file_free (Lib3dsFile *file)
 
void lib3ds_file_insert_camera (Lib3dsFile *file, Lib3dsCamera *camera, int index)
 
void lib3ds_file_insert_light (Lib3dsFile *file, Lib3dsLight *light, int index)
 
void lib3ds_file_insert_material (Lib3dsFile *file, Lib3dsMaterial *material, int index)
 
void lib3ds_file_insert_mesh (Lib3dsFile *file, Lib3dsMesh *mesh, int index)
 
void lib3ds_file_insert_node (Lib3dsFile *file, Lib3dsNode *node, Lib3dsNode *before)
 
int lib3ds_file_light_by_name (Lib3dsFile *file, const char *name)
 
int lib3ds_file_material_by_name (Lib3dsFile *file, const char *name)
 
int lib3ds_file_mesh_by_name (Lib3dsFile *file, const char *name)
 
Lib3dsMeshlib3ds_file_mesh_for_node (Lib3dsFile *file, Lib3dsNode *node)
 
void lib3ds_file_minmax_node_id (Lib3dsFile *file, uint16_t *min_id, uint16_t *max_id)
 
Lib3dsFilelib3ds_file_new ()
 
Lib3dsNodelib3ds_file_node_by_id (Lib3dsFile *file, uint16_t node_id)
 
Lib3dsNodelib3ds_file_node_by_name (Lib3dsFile *file, const char *name, Lib3dsNodeType type)
 
Lib3dsFilelib3ds_file_open (const char *filename)
 
int lib3ds_file_read (Lib3dsFile *file, Lib3dsIo *io)
 
void lib3ds_file_remove_camera (Lib3dsFile *file, int index)
 
void lib3ds_file_remove_light (Lib3dsFile *file, int index)
 
void lib3ds_file_remove_material (Lib3dsFile *file, int index)
 
void lib3ds_file_remove_mesh (Lib3dsFile *file, int index)
 
void lib3ds_file_remove_node (Lib3dsFile *file, Lib3dsNode *node)
 
void lib3ds_file_reserve_cameras (Lib3dsFile *file, int size, int force)
 
void lib3ds_file_reserve_lights (Lib3dsFile *file, int size, int force)
 
void lib3ds_file_reserve_materials (Lib3dsFile *file, int size, int force)
 
void lib3ds_file_reserve_meshes (Lib3dsFile *file, int size, int force)
 
int lib3ds_file_save (Lib3dsFile *file, const char *filename)
 
int lib3ds_file_write (Lib3dsFile *file, Lib3dsIo *io)
 
static void mdata_read (Lib3dsFile *file, Lib3dsIo *io)
 
static void mdata_write (Lib3dsFile *file, Lib3dsIo *io)
 
static void named_object_read (Lib3dsFile *file, Lib3dsIo *io)
 
static void nodes_write (Lib3dsNode *first_node, uint16_t *default_id, uint16_t parent_id, Lib3dsIo *io)
 
static void object_flags_write (uint32_t flags, Lib3dsIo *io)
 

Function Documentation

static void colorf_write ( float  rgb[3],
Lib3dsIo io 
)
static
static int compare_node_id ( const void a,
const void b 
)
static

Definition at line 448 of file lib3ds_file.c.

Referenced by kfdata_read().

static int compare_node_id2 ( const void a,
const void b 
)
static

Definition at line 454 of file lib3ds_file.c.

Referenced by kfdata_read().

static void file_minmax_node_id_impl ( Lib3dsFile file,
Lib3dsNode node,
uint16_t min_id,
uint16_t max_id 
)
static

Definition at line 1249 of file lib3ds_file.c.

References Lib3dsNode::childs, Lib3dsNode::next, and Lib3dsNode::node_id.

Referenced by lib3ds_file_minmax_node_id().

static size_t fileio_read_func ( void self,
void buffer,
size_t  size 
)
static

Definition at line 54 of file lib3ds_file.c.

Referenced by lib3ds_file_open(), and lib3ds_file_save().

static long fileio_seek_func ( void self,
long  offset,
Lib3dsIoSeek  origin 
)
static
static long fileio_tell_func ( void self)
static

Definition at line 47 of file lib3ds_file.c.

Referenced by lib3ds_file_open(), and lib3ds_file_save().

static size_t fileio_write_func ( void self,
const void buffer,
size_t  size 
)
static

Definition at line 61 of file lib3ds_file.c.

Referenced by lib3ds_file_open(), and lib3ds_file_save().

static void nodes_write ( Lib3dsNode first_node,
uint16_t default_id,
uint16_t  parent_id,
Lib3dsIo io 
)
static