A basic set of parameters must exist in every C3D file. Applications that read C3D files will need to find these parameters whenever a C3D file is opened to interpret the data section. The parameters described in this section must exist in all C3D files to maintain C3D file compatibility because they describe the contents of the C3D file data. All parameter data values are stored in a common format and can be examined and modified by applications.
The term parameter in a C3D file refers to certain quantities that may need to be communicated to programs that access the C3D file in order to process the data or read the file correctly. Some of these values are critical to the interpretation of the data and are locked, indicating that they should not be casually changed as they may affect the file format or interpretation of the data. Unlocked parameters exist to provide useful descriptive information stored in parameter format for convenient access and reference by the user who may update and edit unlocked parameters to document the contents of the C3D file during data processing.
C3D files contains many different parameters – some of these are essential and are found in every C3D file , while other parameters will only be seen in C3D files from specific manufacturers, or are parameters generated by post-processing of the data. This situation is complicated by the inherently general nature of the C3D file. Most C3D files contain 3D point data and analog data related to the 3D data – however, it is possible to generate valid C3D files that contain only 3D data, or C3D files that contain only analog data, or data from other sensors. All C3D files must include the parameters described here even if they only serve to indicate that the file does not have a particular data type.
Not all parameters are intended to be editable – the parameter record contains a locking mechanism that should be set to indicate that a parameter should not be modified by the user after it has been set by a program. Such parameters are either assigned values by programs (and inappropriate values could cause other programs using that data to malfunction), or else contain data of an informational nature (e.g., the name of the manufacturer or application that created the file, which should not generally be changed.
Applications may change locked parameters if necessary but please be aware that changing a locked parameter will always have consequences, and if a locked parameter is edited, always lock the parameter after any changes have been made.