#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#include "ply.H"
Include dependency graph for ply.C:
Go to the source code of this file.
Classes | |
struct | RuleName |
Defines | |
#define | NO_OTHER_PROPS -1 |
#define | DONT_STORE_PROP 0 |
#define | STORE_PROP 1 |
#define | OTHER_PROP 0 |
#define | NAMED_PROP 1 |
#define | BIG_STRING 4096 |
Typedefs | |
typedef RuleName | RuleName |
Functions | |
int | equal_strings (char *, char *) |
PlyElement * | find_element (PlyFile *, char *) |
PlyProperty * | find_property (PlyElement *, char *, int *) |
void | write_scalar_type (FILE *, int) |
char ** | get_words (FILE *, int *, char **) |
void | write_binary_item (FILE *, int, unsigned int, double, int) |
void | write_ascii_item (FILE *, int, unsigned int, double, int) |
void | add_element (PlyFile *, char **, int) |
void | add_property (PlyFile *, char **, int) |
void | add_comment (PlyFile *, char *) |
void | add_obj_info (PlyFile *, char *) |
void | copy_property (PlyProperty *, PlyProperty *) |
void | store_item (char *, int, int, unsigned int, double) |
void | get_stored_item (void *, int, int *, unsigned int *, double *) |
double | get_item_value (char *, int) |
void | get_ascii_item (char *, int, int *, unsigned int *, double *) |
void | get_binary_item (FILE *, int, int *, unsigned int *, double *) |
void | ascii_get_element (PlyFile *, char *) |
void | binary_get_element (PlyFile *, char *) |
static char * | my_alloc (int, int, char *) |
PlyFile * | ply_write (FILE *fp, int nelems, char **elem_names, int file_type) |
PlyFile * | open_for_writing_ply (char *filename, int nelems, char **elem_names, int file_type) |
void | element_layout_ply (PlyFile *plyfile, char *elem_name, int nelems, int nprops, PlyProperty *prop_list) |
void | ply_describe_property (PlyFile *plyfile, char *elem_name, PlyProperty *prop) |
void | element_count_ply (PlyFile *plyfile, char *elem_name, int nelems) |
void | header_complete_ply (PlyFile *plyfile) |
void | put_element_setup_ply (PlyFile *plyfile, char *elem_name) |
void | put_element_ply (PlyFile *plyfile, void *elem_ptr) |
PlyFile * | ply_read (FILE *fp, int *nelems, char ***elem_names) |
PlyFile * | ply_open_for_reading (char *filename, int *nelems, char ***elem_names, int *file_type, float *version) |
PlyProperty ** | get_element_description_ply (PlyFile *plyfile, char *elem_name, int *nelems, int *nprops) |
void | get_element_setup_ply (PlyFile *plyfile, char *elem_name, int nprops, PlyProperty *prop_list) |
void | ply_get_property (PlyFile *plyfile, char *elem_name, PlyProperty *prop) |
void | ply_get_element (PlyFile *plyfile, void *elem_ptr) |
char ** | get_comments_ply (PlyFile *plyfile, int *num_comments) |
char ** | get_obj_info_ply (PlyFile *plyfile, int *num_obj_info) |
void | setup_other_props (PlyFile *plyfile, PlyElement *elem) |
static PlyOtherProp * | get_other_properties (PlyFile *plyfile, PlyElement *elem, int offset) |
PlyOtherProp * | ply_get_other_properties (PlyFile *plyfile, char *elem_name, int offset) |
PlyOtherElems * | get_other_element_ply (PlyFile *plyfile) |
void | put_other_elements_ply (PlyFile *plyfile) |
void | free_other_elements_ply (PlyOtherElems *other_elems) |
void | ply_close (PlyFile *plyfile) |
void | get_info_ply (PlyFile *ply, float *version, int *file_type) |
char * | recreate_command_line (int argc, char *argv[]) |
int | get_prop_type (char *type_name) |
PlyFile * | read_ply (FILE *fp) |
PlyFile * | write_ply (FILE *fp, int nelems, char **elem_names, int file_type) |
char ** | get_element_list_ply (PlyFile *ply, int *num_elems) |
void | append_comment_ply (PlyFile *ply, char *comment) |
void | copy_comments_ply (PlyFile *out_ply, PlyFile *in_ply) |
void | append_obj_info_ply (PlyFile *ply, char *obj_info) |
void | copy_obj_info_ply (PlyFile *out_ply, PlyFile *in_ply) |
void | close_ply (PlyFile *plyfile) |
void | free_ply (PlyFile *plyfile) |
char * | setup_element_read_ply (PlyFile *ply, int index, int *elem_count) |
void | get_element_ply (PlyFile *plyfile, void *elem_ptr) |
void | setup_property_ply (PlyFile *plyfile, PlyProperty *prop) |
PlyOtherProp * | get_other_properties_ply (PlyFile *plyfile, int offset) |
void | describe_element_ply (PlyFile *plyfile, char *elem_name, int nelems) |
void | describe_property_ply (PlyFile *plyfile, PlyProperty *prop) |
void | describe_other_properties_ply (PlyFile *plyfile, PlyOtherProp *other, int offset) |
void | describe_other_elements_ply (PlyFile *plyfile, PlyOtherElems *other_elems) |
PlyPropRules * | init_rule_ply (PlyFile *ply, char *elem_name) |
void | modify_rule_ply (PlyPropRules *rules, char *prop_name, int rule_type) |
void | start_props_ply (PlyFile *ply, PlyPropRules *rules) |
void | weight_props_ply (PlyFile *ply, float weight, void *other_props) |
void * | get_new_props_ply (PlyFile *ply) |
void | set_prop_rules_ply (PlyFile *ply, PlyRuleList *prop_rules) |
PlyRuleList * | append_prop_rule (PlyRuleList *rule_list, char *name, char *property) |
int | matches_rule_name (char *name) |
Variables | |
char * | type_names [] |
char * | old_type_names [] |
int | ply_type_size [] |
RuleName | rule_name_list [] |
|
Referenced by get_words(). |
|
Definition at line 57 of file ply.C. Referenced by ply_read(). |
|
Definition at line 61 of file ply.C. Referenced by describe_property_ply(), element_layout_ply(), and ply_describe_property(). |
|
Definition at line 55 of file ply.C. Referenced by ascii_get_element(), binary_get_element(), get_other_properties(), and ply_read(). |
|
Definition at line 60 of file ply.C. Referenced by describe_other_properties_ply(), and put_element_ply(). |
|
Definition at line 58 of file ply.C. Referenced by get_element_setup_ply(), ply_get_property(), and setup_property_ply(). |
|
|
|
Definition at line 2364 of file ply.C. References append_comment_ply(). Referenced by ply_read(). |
|
Definition at line 2251 of file ply.C. References PlyFile::elems, myalloc, PlyElement::name, PlyElement::nprops, PlyElement::num, and PlyFile::num_elem_types. Referenced by ply_read(). |
|
Definition at line 2385 of file ply.C. References append_obj_info_ply(). Referenced by ply_read(). |
|
Definition at line 2312 of file ply.C. References PlyProperty::count_external, PlyFile::elems, equal_strings(), PlyProperty::external_type, get_prop_type(), Int8, PlyProperty::is_list, myalloc, PlyProperty::name, PlyElement::nprops, PlyFile::num_elem_types, PLY_LIST, PLY_SCALAR, PLY_STRING, and PlyElement::props. Referenced by ply_read(). |
|
Definition at line 2534 of file ply.C. References PlyFile::comments, myalloc, and PlyFile::num_comments. Referenced by add_comment(), and copy_comments_ply(). |
|
Definition at line 2574 of file ply.C. References myalloc, PlyFile::num_obj_info, and PlyFile::obj_info. Referenced by add_obj_info(), and copy_obj_info_ply(). |
|
Definition at line 3245 of file ply.C. References PlyRuleList::element, PlyRuleList::name, PlyRuleList::next, and PlyRuleList::property. |
|
Definition at line 1412 of file ply.C. References PlyProperty::count_external, PlyProperty::count_internal, PlyProperty::count_offset, PlyProperty::external_type, PlyFile::fp, get_ascii_item(), get_words(), PlyProperty::internal_type, PlyProperty::is_list, j, myalloc, NO_OTHER_PROPS, PlyProperty::offset, PlyElement::other_offset, PlyElement::other_size, PLY_LIST, PLY_STRING, ply_type_size, PlyElement::props, store_item(), PlyElement::store_prop, and PlyFile::which_elem. Referenced by get_element_ply(), and ply_get_element(). |
|
Definition at line 1547 of file ply.C. References PlyProperty::count_external, PlyProperty::count_internal, PlyProperty::count_offset, PlyProperty::external_type, PlyFile::fp, get_binary_item(), PlyProperty::internal_type, PlyProperty::is_list, j, myalloc, NO_OTHER_PROPS, PlyProperty::offset, PlyElement::other_offset, PlyElement::other_size, PLY_LIST, PLY_STRING, ply_type_size, PlyElement::props, store_item(), PlyElement::store_prop, and PlyFile::which_elem. Referenced by get_element_ply(), and ply_get_element(). |
|
Definition at line 2613 of file ply.C. References PlyFile::fp. Referenced by read_file(). |
|
Definition at line 2557 of file ply.C. References append_comment_ply(), and PlyFile::comments. |
|
Definition at line 2597 of file ply.C. References append_obj_info_ply(), and PlyFile::obj_info. |
|
Definition at line 2402 of file ply.C. References PlyProperty::count_external, PlyProperty::count_internal, PlyProperty::count_offset, PlyProperty::external_type, PlyProperty::internal_type, PlyProperty::is_list, PlyProperty::name, and PlyProperty::offset. Referenced by describe_other_properties_ply(), describe_property_ply(), element_layout_ply(), get_element_description_ply(), get_other_properties(), and ply_describe_property(). |
|
Definition at line 2757 of file ply.C. References find_element(), PlyElement::num, and PlyFile::which_elem. |
|
Definition at line 2888 of file ply.C. References describe_other_properties_ply(), OtherElem::elem_count, OtherElem::elem_name, element_count_ply(), PlyFile::other_elems, PlyOtherElems::other_list, and OtherElem::other_props. |
|
Definition at line 2828 of file ply.C. References copy_property(), find_element(), myalloc, PlyOtherProp::name, PlyElement::nprops, PlyOtherProp::nprops, PlyElement::other_offset, OTHER_PROP, PlyElement::other_size, PlyElement::props, PlyOtherProp::props, PlyOtherProp::size, and PlyElement::store_prop. Referenced by describe_other_elements_ply(). |
|
Definition at line 2789 of file ply.C. References copy_property(), myalloc, NAMED_PROP, PlyElement::nprops, PlyElement::props, PlyElement::store_prop, and PlyFile::which_elem. |
|
Definition at line 331 of file ply.C. References find_element(), and PlyElement::num. Referenced by describe_other_elements_ply(). |
|
Definition at line 236 of file ply.C. References copy_property(), find_element(), myalloc, NAMED_PROP, PlyElement::nprops, PlyElement::num, PlyElement::props, and PlyElement::store_prop. |
|
Definition at line 1306 of file ply.C. Referenced by add_property(), find_element(), find_property(), get_prop_type(), init_rule_ply(), matches_rule_name(), modify_rule_ply(), ply_read(), and read_file(). |
|
Definition at line 1365 of file ply.C. References PlyFile::elems, equal_strings(), and PlyElement::name. Referenced by describe_element_ply(), describe_other_properties_ply(), element_count_ply(), element_layout_ply(), get_element_description_ply(), get_element_setup_ply(), init_rule_ply(), ply_describe_property(), ply_get_other_properties(), ply_get_property(), and put_element_setup_ply(). |
|
Definition at line 1389 of file ply.C. References equal_strings(), PlyProperty::name, and PlyElement::props. Referenced by get_element_setup_ply(), ply_get_property(), and setup_property_ply(). |
|
|
|
Definition at line 2626 of file ply.C. Referenced by read_file(). |
|
Definition at line 2134 of file ply.C. References Float32, Float64, int(), Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by ascii_get_element(). |
|
Definition at line 2051 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by binary_get_element(). |
|
Definition at line 930 of file ply.C. References PlyFile::comments, and PlyFile::num_comments. |
|
Definition at line 773 of file ply.C. References copy_property(), find_element(), myalloc, PlyElement::nprops, PlyElement::num, and PlyElement::props. |
|
Definition at line 2509 of file ply.C. References PlyFile::elems, myalloc, PlyElement::name, and PlyFile::num_elem_types. |
|
Definition at line 2675 of file ply.C. References ascii_get_element(), binary_get_element(), PlyFile::file_type, and PLY_ASCII. Referenced by read_file(). |
|
Definition at line 817 of file ply.C. References PlyProperty::count_internal, PlyProperty::count_offset, find_element(), find_property(), PlyProperty::internal_type, PlyProperty::offset, PlyElement::store_prop, STORE_PROP, and PlyFile::which_elem. |
|
Definition at line 1292 of file ply.C. References PlyFile::file_type, and PlyFile::version. |
|
Definition at line 1808 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. |
|
Definition at line 3103 of file ply.C. References AVERAGE_RULE, PlyFile::current_rules, PlyPropRules::elem, PlyProperty::external_type, get_stored_item(), int(), j, MAXIMUM_RULE, MINIMUM_RULE, myalloc, PlyPropRules::nprops, PlyProperty::offset, PlyElement::other_size, PlyElement::props, PlyPropRules::props, RANDOM_RULE, PlyPropRules::rule_list, SAME_RULE, store_item(), PlyElement::store_prop, and PlyPropRules::weights. |
|
Definition at line 949 of file ply.C. References PlyFile::num_obj_info, and PlyFile::obj_info. |
|
Definition at line 1158 of file ply.C. References OtherElem::elem_count, OtherElem::elem_name, myalloc, PlyElement::name, PlyElement::num, PlyOtherElems::num_elems, OtherElem::other_data, PlyFile::other_elems, PlyOtherElems::other_list, OtherElem::other_props, ply_get_element(), ply_get_other_properties(), and PlyFile::which_elem. Referenced by read_file(). |
|
Definition at line 1045 of file ply.C. References copy_property(), myalloc, PlyElement::name, PlyOtherProp::name, NO_OTHER_PROPS, PlyElement::nprops, PlyOtherProp::nprops, PlyElement::other_offset, PlyElement::other_size, PlyElement::props, PlyOtherProp::props, setup_other_props(), PlyOtherProp::size, PlyElement::store_prop, and PlyFile::which_elem. Referenced by get_other_properties_ply(), and ply_get_other_properties(). |
|
Definition at line 2735 of file ply.C. References get_other_properties(), and PlyFile::which_elem. Referenced by read_file(). |
|
Definition at line 2284 of file ply.C. References EndType, equal_strings(), old_type_names, StartType, and type_names. Referenced by add_property(). |
|
Definition at line 1981 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by get_new_props_ply(), and put_element_ply(). |
|
Definition at line 1698 of file ply.C. References BIG_STRING, j, and myalloc. Referenced by ascii_get_element(), and ply_read(). |
|
Definition at line 360 of file ply.C. References PlyFile::comments, PlyProperty::count_external, PlyFile::elems, PlyProperty::external_type, PlyFile::file_type, PlyFile::fp, PlyProperty::is_list, j, PlyElement::name, PlyProperty::name, PlyElement::num, PlyFile::obj_info, PLY_ASCII, PLY_BINARY_BE, PLY_BINARY_LE, PLY_LIST, PLY_STRING, PlyElement::props, and write_scalar_type(). |
|
Definition at line 2947 of file ply.C. References AVERAGE_RULE, RuleName::code, PlyPropRules::elem, PlyRuleList::element, equal_strings(), find_element(), j, PlyPropRules::max_props, myalloc, PlyElement::name, PlyProperty::name, PlyRuleList::name, RuleName::name, PlyRuleList::next, PlyElement::nprops, PlyPropRules::nprops, PlyRuleList::property, PlyElement::props, PlyPropRules::rule_list, and PlyFile::rule_list. |
|
Definition at line 3304 of file ply.C. References equal_strings(). |
|
Definition at line 3018 of file ply.C. References PlyPropRules::elem, equal_strings(), PlyProperty::name, PlyElement::props, and PlyPropRules::rule_list. |
|
|
|
Definition at line 185 of file ply.C. References myalloc, and ply_write(). |
|
Definition at line 1272 of file ply.C. References PlyFile::fp. |
|
Definition at line 281 of file ply.C. References copy_property(), find_element(), myalloc, NAMED_PROP, PlyElement::nprops, PlyElement::props, and PlyElement::store_prop. |
|
Definition at line 910 of file ply.C. References ascii_get_element(), binary_get_element(), PlyFile::file_type, and PLY_ASCII. Referenced by get_other_element_ply(). |
|
Definition at line 1115 of file ply.C. References find_element(), and get_other_properties(). Referenced by get_other_element_ply(). |
|
Definition at line 868 of file ply.C. References PlyProperty::count_internal, PlyProperty::count_offset, find_element(), find_property(), PlyProperty::internal_type, PlyProperty::name, PlyProperty::offset, PlyElement::store_prop, STORE_PROP, and PlyFile::which_elem. |
|
Definition at line 719 of file ply.C. References PlyFile::file_type, myalloc, ply_read(), and PlyFile::version. |
|
Definition at line 611 of file ply.C. References add_comment(), add_element(), add_obj_info(), add_property(), PlyFile::comments, DONT_STORE_PROP, PlyFile::elems, equal_strings(), PlyFile::file_type, PlyFile::fp, get_words(), j, myalloc, PlyElement::name, NO_OTHER_PROPS, PlyElement::nprops, PlyFile::num_comments, PlyFile::num_elem_types, PlyFile::num_obj_info, PlyFile::obj_info, PlyFile::other_elems, PlyElement::other_offset, PLY_ASCII, PLY_BINARY_BE, PLY_BINARY_LE, PlyFile::rule_list, PlyElement::store_prop, and PlyFile::version. Referenced by ply_open_for_reading(), and read_ply(). |
|
Definition at line 130 of file ply.C. References PlyFile::elems, PlyFile::file_type, PlyFile::fp, myalloc, PlyElement::name, PlyElement::nprops, PlyElement::num, PlyFile::num_comments, PlyFile::num_elem_types, PlyFile::num_obj_info, PlyFile::other_elems, and PlyFile::version. Referenced by open_for_writing_ply(), and write_ply(). |
|
|
Definition at line 437 of file ply.C. References find_element(), and PlyFile::which_elem. Referenced by put_other_elements_ply(). |
|
Definition at line 1222 of file ply.C. References OtherElem::elem_name, j, OtherElem::other_data, PlyFile::other_elems, PlyOtherElems::other_list, put_element_ply(), and put_element_setup_ply(). |
|
Definition at line 2458 of file ply.C. References elem_names, and ply_read(). Referenced by read_file(). |
|
|
|
Definition at line 3227 of file ply.C. References PlyFile::rule_list. |
|
Definition at line 2645 of file ply.C. References PlyFile::elems, PlyElement::name, PlyElement::num, PlyFile::num_elem_types, and PlyFile::which_elem. Referenced by read_file(). |
|
Definition at line 967 of file ply.C. References PlyProperty::count_external, PlyProperty::count_internal, PlyProperty::count_offset, PlyProperty::external_type, PlyProperty::internal_type, PlyProperty::is_list, PlyProperty::offset, PlyElement::other_size, PLY_LIST, PLY_STRING, ply_type_size, PlyElement::props, and PlyElement::store_prop. Referenced by get_other_properties(). |
|
Definition at line 2694 of file ply.C. References PlyProperty::count_internal, PlyProperty::count_offset, find_property(), PlyProperty::internal_type, PlyProperty::name, PlyElement::name, PlyProperty::offset, PlyElement::store_prop, STORE_PROP, and PlyFile::which_elem. Referenced by read_file(). |
|
Definition at line 3045 of file ply.C. References PlyFile::current_rules, PlyPropRules::elem, and PlyPropRules::nprops. |
|
Definition at line 2187 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by ascii_get_element(), binary_get_element(), and get_new_props_ply(). |
|
Definition at line 3068 of file ply.C. References PlyFile::current_rules, PlyPropRules::max_props, myalloc, PlyPropRules::nprops, PlyPropRules::props, and PlyPropRules::weights. |
|
Definition at line 1937 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by put_element_ply(). |
|
Definition at line 1875 of file ply.C. References Float32, Float64, Int16, Int32, Int8, Uint16, Uint32, and Uint8. Referenced by put_element_ply(). |
|
Definition at line 2483 of file ply.C. References ply_write(). |
|
Definition at line 1668 of file ply.C. References EndType, and type_names. Referenced by header_complete_ply(). |
|
Initial value: { "invalid", "char", "short", "int", "uchar", "ushort", "uint", "float", "double", } Definition at line 46 of file ply.C. Referenced by get_prop_type(). |
|
Initial value: { 0, 1, 2, 4, 1, 2, 4, 4, 8 } Definition at line 51 of file ply.C. Referenced by ascii_get_element(), binary_get_element(), put_element_ply(), and setup_other_props(). |
|
Initial value: { AVERAGE_RULE, "avg", RANDOM_RULE, "rnd", MINIMUM_RULE, "max", MAXIMUM_RULE, "min", MAJORITY_RULE, "major", SAME_RULE, "same", -1, "end_marker", } |
|
Initial value: { "invalid", "int8", "int16", "int32", "uint8", "uint16", "uint32", "float32", "float64", } Definition at line 41 of file ply.C. Referenced by get_prop_type(), and write_scalar_type(). |