rd_editcut — Rivendell Edit Cut C Library Function
#include <rivwebcapi/rd_editcut.h>
int RD_EditCut( | cut[], | |
| edit_cut_values, | ||
| hostname[], | ||
| username[], | ||
| passwd[], | ||
| ticket[], | ||
| cartnumber, | ||
| cutnumber, | ||
| user_agent[], | ||
numrecs); |
struct rd_cut * cut[]; struct edit_cut_values edit_cut_values;const char hostname[];const char username[];const char passwd[];const char ticket[];const unsigned cartnumber;const unsigned cutnumber;const char user_agent[];unsigned * numrecs;RD_EditCut is the function to use to edit the fields within a cut that already exists in the Rivendell Database.
This function edits a pre-existing cut. User must provide the cart number, cut number and any fields which they would like to change. The structure edit_cut_values must be used to tell the API which fields will be changed.
Table 1. RD_EditCart function call fields
| FIELD NAME | FIELD TYPE | MEANING | REMARKS |
|---|---|---|---|
| *rd_cut | Pointer to rd_cut structure | Memory location to store cut information | Mandatory |
| edit_cut_values | edit_cut_values structure | This structure contains the new cut information to update | Mandatory |
| hostname | Character Array | Name Of Rivendell DB Host | Mandatory |
| username | Character Array | Rivendell User Name | Mandatory When NO Ticket Provided |
| passwd | Character Array | Rivendell User Password | Mandatory When NO Ticket Provided |
| ticket | Character Array | Rivendell Authentification Ticket | Mandatory When NO User/Password Pair Provided. |
| cartnumber | unsigned integer | Cart Number | Mandatory |
| cutnumber | unsigned integer | Cut Number | Mandatory |
| user_agent | Character Array | User Agent Value put into HTTP request | Optional (default is Rivendell-C-API/x.x.x) |
| *numrecs | pointer to integer | memory location for number of records returned | Mandatory |
This routine expects an input structure of type edit_cut_values - listed below. Each field has a boolean flag field (starting with use_) which designates whether to update the field's value or not. One (1) = true - Use the value in the field or Zero (0) - Ignore the field.
The edit_cut_values structure must be pre-filled with zeroes and has the following format:
struct edit_cut_values {
int cut_evergreen;
int use_cut_evergreen;
char cut_description[257];
int use_cut_description;
char cut_outcue[257];
int use_cut_outcue;
char cut_isrc[49];
int use_cut_isrc;
char cut_isci[129];
int use_cut_isci;
struct tm cut_start_datetime;
int use_cut_start_datetime;
struct tm cut_end_datetime;
int use_cut_end_datetime;
int cut_sun;
int use_cut_sun;
int cut_mon;
int use_cut_mon;
int cut_tue;
int use_cut_tue;
int cut_wed;
int use_cut_wed;
int cut_thu;
int use_cut_thu;
int cut_fri;
int use_cut_fri;
int cut_sat;
int use_cut_sat;
char cut_start_daypart[14];
int use_cut_start_daypart;
char cut_end_daypart[14];
int use_cut_end_daypart;
unsigned cut_weight;
int use_cut_weight;
unsigned cut_validity;
int use_cut_validity;
unsigned cut_coding_format;
int use_cut_coding_format;
unsigned cut_sample_rate;
int use_cut_sample_rate;
unsigned cut_bit_rate;
int use_cut_bit_rate;
unsigned cut_channels;
int use_cut_channels;
int cut_play_gain;
int use_cut_play_gain;
int cut_start_point;
int use_cut_start_point;
int cut_end_point;
int use_cut_end_point;
int cut_fadeup_point;
int use_cut_fadeup_point;
int cut_fadedown_point;
int use_cut_fadedown_point;
int cut_segue_start_point;
int use_cut_segue_start_point;
int cut_segue_end_point;
int use_cut_segue_end_point;
int cut_segue_gain;
int use_cut_segue_gain;
int cut_hook_start_point;
int use_cut_hook_start_point;
int cut_hook_end_point;
int use_cut_hook_end_point;
int cut_talk_start_point;
int use_cut_talk_start_point;
int cut_talk_end_point;
int use_cut_talk_end_point;
};
When successful function will return the number of records sent (numrecs) and a rd_cut structure which is stored in the provided memory locations. The rd_cut structure has the following fields:
struct rd_cut {
char cut_name[11];
unsigned cut_cart_number;
unsigned cut_cut_number;
int cut_evergreen;
char cut_description[257];
char cut_outcue[257];
char cut_isrc[49];
char cut_isci[129];
unsigned cut_length;
struct tm cut_origin_datetime;
struct tm cut_start_datetime;
struct tm cut_end_datetime;
int cut_sun;
int cut_mon;
int cut_tue;
int cut_wed;
int cut_thu;
int cut_fri;
int cut_sat;
char cut_start_daypart[9];
char cut_end_daypart[9];
char cut_origin_name[257];
unsigned cut_weight;
struct tm cut_last_play_datetime;
unsigned cut_play_counter;
unsigned cut_local_counter;
unsigned cut_validity;
unsigned cut_coding_format;
unsigned cut_sample_rate;
unsigned cut_bit_rate;
unsigned cut_channels;
int cut_play_gain;
int cut_start_point;
int cut_end_point;
int cut_fadeup_point;
int cut_fadedown_point;
int cut_segue_start_point;
int cut_segue_end_point;
int cut_segue_gain;
int cut_hook_start_point;
int cut_hook_end_point;
int cut_talk_start_point;
int cut_talk_end_point;
};
All character arrays above are the sizes listed and are null-terminated.
Character encoding is UTF-8.