gtpc2mcaC/C++ Language Support User's Guide

TO2_copyCollectionTemp-Make a Temporary Copy of the Collection

This function creates a temporary copy of the specified collection and returns its persistent identifier (PID). The copy is created using the default data definition for a temporary collection of its type. The function does not copy the properties of the source collection.

Format

#include <c$to2.h>
long TO2_copyCollectionTemp (const TO2_PID_PTR  pid_ptr,
                                   TO2_ENV_PTR  env_ptr,
                                   TO2_PID_PTR  rpid_ptr);

pid_ptr
The pointer to the PID assigned to the collection that will be copied.

env_ptr
The pointer to the environment as returned by the TO2_createEnv function.

rpid_ptr
The pointer to where the PID for the copy of the collection will be returned.

Normal Return

The normal return is a positive value.

Error Return

An error return is indicated by a zero. When zero is returned, use the TO2_getErrorCode function to determine the specific error code. For more information, see Error Handling.

The following error codes are common for this function:

TO2_ERROR_ENV

TO2_ERROR_METHOD

TO2_ERROR_NOT_INIT

TO2_ERROR_PID

TO2_ERROR_ZERO_PID

Programming Considerations

Examples

The following example creates a temporary copy of an existing collection.

#include <c$to2.h>            /* Needed for TO2 API functions      */
#include <stdio.h>            /* APIs for standard I/O functions   */
 
TO2_ENV_PTR    env_ptr;       /* Pointer to the TO2 environment    */
TO2_PID        sourcePID;     /* must create collection and save
                                  its PID here prior to copy...    */
TO2_PID        copyPID;       /* will obtain PID for copied
                                    collection below...            */

  ·
  ·
  ·
if (TO2_copyCollectionTemp(&sourcePID, env_ptr, &copyPID) == TO2_ERROR) { printf("TO2_copyCollectionTemp failed!\n"); process_error(env_ptr); } else { printf("TO2_copyCollectionTemp successful!\n"); }
  ·
  ·
  ·
TO2_deleteCollection(&copyPID, env_ptr);

Related Information