Home | History | Annotate | Download | only in jhead

Lines Matching defs:Components

590         int Tag, Format, Components;
598 Components = Get32u(DirEntry+4);
606 if ((unsigned)Components > 0x10000){
607 ErrNonfatal("Illegal number of components %d for tag %04x", Components, Tag);
611 ByteCount = Components * BytesPerFormat[Format];
703 // Extract useful components of tag
1198 components,
1208 if (format == FMT_STRING && components == -1) {
1209 components = strlen((char*)value) + 1; // account for null terminator
1210 if (components & 1) ++components; // no odd lengths
1211 } else if (format == FMT_SSHORT && components == -1) {
1213 components = 1;
1215 if (format == FMT_UNDEFINED && components == -1) {
1219 components = sizeof(ExifAsciiPrefix) +
1221 if (components & 1) ++components; // no odd lengths
1224 Put32u(Buffer+(*DirIndex) + 4, components); // Components
1225 componentsPosition = Buffer+(*DirIndex) + 4; // components # can change for lists
1226 printf("# components: %ld", components);
1230 if (components <= 4) {
1235 strncpy(Buffer+(*DataWriteIndex), (char*)value, components);
1236 (*DataWriteIndex) += components;
1242 if (components <= 4) {
1243 memcpy(Buffer+(*DirIndex) + 8, (char*)value, components);
1247 memcpy(Buffer+(*DataWriteIndex), (char*)value, components);
1248 (*DataWriteIndex) += components;
1259 // (components == -1) Need to handle lists with unknown length too
1260 for (i = 0; ((i < components) || (components == -1)) && curElement != NULL; i++) {
1293 } else if ((components == -1) && ((format == FMT_USHORT) || (format == FMT_SSHORT))) {
1294 // variable components need to go into data write area
1299 // TODO: doesn't handle multiple components yet -- if more than one, have to put in data write area.
1305 if (components == -1) Put32u(componentsPosition, i); // update component # for unknowns