| [8] | 1 | |
|---|
| 2 | #ifndef INCLUDED_LIB3DS_FILE_H |
|---|
| 3 | #define INCLUDED_LIB3DS_FILE_H |
|---|
| 4 | |
|---|
| 5 | |
|---|
| 6 | |
|---|
| 7 | |
|---|
| 8 | |
|---|
| 9 | |
|---|
| 10 | |
|---|
| 11 | |
|---|
| 12 | |
|---|
| 13 | |
|---|
| 14 | |
|---|
| 15 | |
|---|
| 16 | |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | |
|---|
| 20 | |
|---|
| 21 | |
|---|
| 22 | |
|---|
| 23 | |
|---|
| 24 | |
|---|
| 25 | |
|---|
| 26 | #ifndef INCLUDED_LIB3DS_BACKGROUND_H |
|---|
| [1531] | 27 | #include "background.h" |
|---|
| [8] | 28 | #endif |
|---|
| 29 | #ifndef INCLUDED_LIB3DS_ATMOSPHERE_H |
|---|
| [1531] | 30 | #include "atmosphere.h" |
|---|
| [8] | 31 | #endif |
|---|
| 32 | #ifndef INCLUDED_LIB3DS_SHADOW_H |
|---|
| [1531] | 33 | #include "shadow.h" |
|---|
| [8] | 34 | #endif |
|---|
| 35 | #ifndef INCLUDED_LIB3DS_VIEWPORT_H |
|---|
| [1531] | 36 | #include "viewport.h" |
|---|
| [8] | 37 | #endif |
|---|
| [10076] | 38 | #include <osgDB/Registry> |
|---|
| 39 | #include <iostream> |
|---|
| 40 | using namespace std; |
|---|
| [8] | 41 | |
|---|
| 42 | #ifdef __cplusplus |
|---|
| 43 | extern "C" { |
|---|
| 44 | #endif |
|---|
| 45 | |
|---|
| [10076] | 46 | |
|---|
| 47 | |
|---|
| [8] | 48 | |
|---|
| 49 | |
|---|
| 50 | |
|---|
| 51 | |
|---|
| 52 | struct _Lib3dsFile { |
|---|
| 53 | Lib3dsDword mesh_version; |
|---|
| 54 | Lib3dsWord keyf_revision; |
|---|
| [151] | 55 | char name[12+1]; |
|---|
| [8] | 56 | Lib3dsFloat master_scale; |
|---|
| 57 | Lib3dsVector construction_plane; |
|---|
| 58 | Lib3dsRgb ambient; |
|---|
| 59 | Lib3dsShadow shadow; |
|---|
| 60 | Lib3dsBackground background; |
|---|
| 61 | Lib3dsAtmosphere atmosphere; |
|---|
| 62 | Lib3dsViewport viewport; |
|---|
| 63 | Lib3dsViewport viewport_keyf; |
|---|
| 64 | Lib3dsIntd frames; |
|---|
| 65 | Lib3dsIntd segment_from; |
|---|
| 66 | Lib3dsIntd segment_to; |
|---|
| 67 | Lib3dsIntd current_frame; |
|---|
| 68 | Lib3dsMaterial *materials; |
|---|
| 69 | Lib3dsMesh *meshes; |
|---|
| 70 | Lib3dsCamera *cameras; |
|---|
| 71 | Lib3dsLight *lights; |
|---|
| 72 | Lib3dsNode *nodes; |
|---|
| 73 | }; |
|---|
| 74 | |
|---|
| [10076] | 75 | extern LIB3DSAPI Lib3dsFile* lib3ds_file_load(const char *filename, const osgDB::ReaderWriter::Options* options); |
|---|
| 76 | extern LIB3DSAPI Lib3dsFile* lib3ds_stream_load(iostream * strm); |
|---|
| [151] | 77 | extern LIB3DSAPI Lib3dsBool lib3ds_file_save(Lib3dsFile *file, const char *filename); |
|---|
| [8] | 78 | extern LIB3DSAPI Lib3dsFile* lib3ds_file_new(); |
|---|
| 79 | extern LIB3DSAPI void lib3ds_file_free(Lib3dsFile *file); |
|---|
| 80 | extern LIB3DSAPI void lib3ds_file_eval(Lib3dsFile *file, Lib3dsFloat t); |
|---|
| [10076] | 81 | extern LIB3DSAPI Lib3dsBool lib3ds_file_read(Lib3dsFile *file, iostream *strm); |
|---|
| 82 | extern LIB3DSAPI Lib3dsBool lib3ds_file_write(Lib3dsFile *file, iostream *strm); |
|---|
| [8] | 83 | extern LIB3DSAPI void lib3ds_file_insert_material(Lib3dsFile *file, Lib3dsMaterial *material); |
|---|
| 84 | extern LIB3DSAPI void lib3ds_file_remove_material(Lib3dsFile *file, Lib3dsMaterial *material); |
|---|
| 85 | extern LIB3DSAPI Lib3dsMaterial* lib3ds_file_material_by_name(Lib3dsFile *file, const char *name); |
|---|
| 86 | extern LIB3DSAPI void lib3ds_file_dump_materials(Lib3dsFile *file); |
|---|
| 87 | extern LIB3DSAPI void lib3ds_file_insert_mesh(Lib3dsFile *file, Lib3dsMesh *mesh); |
|---|
| 88 | extern LIB3DSAPI void lib3ds_file_remove_mesh(Lib3dsFile *file, Lib3dsMesh *mesh); |
|---|
| 89 | extern LIB3DSAPI Lib3dsMesh* lib3ds_file_mesh_by_name(Lib3dsFile *file, const char *name); |
|---|
| 90 | extern LIB3DSAPI void lib3ds_file_dump_meshes(Lib3dsFile *file); |
|---|
| 91 | extern LIB3DSAPI void lib3ds_file_dump_instances(Lib3dsFile *file); |
|---|
| 92 | extern LIB3DSAPI void lib3ds_file_insert_camera(Lib3dsFile *file, Lib3dsCamera *camera); |
|---|
| 93 | extern LIB3DSAPI void lib3ds_file_remove_camera(Lib3dsFile *file, Lib3dsCamera *camera); |
|---|
| 94 | extern LIB3DSAPI Lib3dsCamera* lib3ds_file_camera_by_name(Lib3dsFile *file, const char *name); |
|---|
| 95 | extern LIB3DSAPI void lib3ds_file_dump_cameras(Lib3dsFile *file); |
|---|
| 96 | extern LIB3DSAPI void lib3ds_file_insert_light(Lib3dsFile *file, Lib3dsLight *light); |
|---|
| 97 | extern LIB3DSAPI void lib3ds_file_remove_light(Lib3dsFile *file, Lib3dsLight *light); |
|---|
| 98 | extern LIB3DSAPI Lib3dsLight* lib3ds_file_light_by_name(Lib3dsFile *file, const char *name); |
|---|
| 99 | extern LIB3DSAPI void lib3ds_file_dump_lights(Lib3dsFile *file); |
|---|
| 100 | extern LIB3DSAPI Lib3dsNode* lib3ds_file_node_by_name(Lib3dsFile *file, const char* name, |
|---|
| 101 | Lib3dsNodeTypes type); |
|---|
| [151] | 102 | extern LIB3DSAPI Lib3dsNode* lib3ds_file_node_by_id(Lib3dsFile *file, Lib3dsWord node_id); |
|---|
| [8] | 103 | extern LIB3DSAPI void lib3ds_file_insert_node(Lib3dsFile *file, Lib3dsNode *node); |
|---|
| 104 | extern LIB3DSAPI Lib3dsBool lib3ds_file_remove_node(Lib3dsFile *file, Lib3dsNode *node); |
|---|
| 105 | extern LIB3DSAPI void lib3ds_file_dump_nodes(Lib3dsFile *file); |
|---|
| 106 | |
|---|
| 107 | #ifdef __cplusplus |
|---|
| [6461] | 108 | } |
|---|
| [8] | 109 | #endif |
|---|
| 110 | #endif |
|---|