odm_change_obj Subroutine

Purpose

Changes an object in the object class.

Library

Object Data Manager Library (libodm.a)

Syntax

#include <odmi.h>
int odm_change_obj ( ClassSymbol DataStructure)
CLASS_SYMBOL ClassSymbol;
struct ClassName *DataStructure;

Description

The odm_change_obj subroutine takes as input the class symbol that identifies both the object class to change and a pointer to the data structure containing the object to be changed. The application program must first retrieve the object with an odm_get_obj subroutine call, change the data values in the returned structure, and then pass that structure to the odm_change_obj subroutine.

The odm_change_obj subroutine opens and closes the object class around the change if the object class was not previously opened. If the object class was previously opened, then the subroutine leaves the object class open when it returns.

Parameters

Item Description
ClassSymbol Specifies a class symbol identifier returned from an odm_open_class subroutine. If the odm_open_class subroutine has not been called, then this identifier is the ClassName_CLASS structure that is created by the odmcreate command.
DataStructure Specifies a pointer to an instance of the C language structure corresponding to the object class referenced by the ClassSymbol parameter. The structure is declared in the .h file created by the odmcreate command and has the same name as the object class.

Return Values

Upon successful completion, a value of 0 is returned. If the odm_change_obj subroutine fails, a value of -1 is returned and the odmerrno variable is set to an error code.

Error Codes

Failure of the odm_change_obj subroutine sets the odmerrno variable to one of the following error codes:

See ../bostechref/odm_error_codes.html for explanations of the ODM error codes.