Summary
Add new enum values to CeedContextFieldType for single-precision floating point, 64-bit integer, byte, and CeedInt and CeedScalar types.
Possible Implementation
typedef enum {
/// Byte value, C type of char
CEED_CONTEXT_FIELD_BYTE = 1,
/// CeedScalar value
CEED_CONTEXT_FIELD_SCALAR = 2,
/// Single precision value
CEED_CONTEXT_FIELD_FLOAT = 3,
/// Double precision value
CEED_CONTEXT_FIELD_DOUBLE = 4,
/// CeedInt value
CEED_CONTEXT_FIELD_INT = 5,
/// 32 bit integer value
CEED_CONTEXT_FIELD_INT32 = 6,
/// 64 bit integer value
CEED_CONTEXT_FIELD_INT64 = 7,
/// Boolean value
CEED_CONTEXT_FIELD_BOOL = 8,
} CeedContextFieldType;
int CeedQFunctionContextRegisterByte(CeedQFunctionContext ctx, const char *field_name, size_t field_offset, size_t num_values, const char *field_description);
int CeedQFunctionContextRegisterScalar(CeedQFunctionContext ctx, const char *field_name, size_t field_offset, size_t num_values, const char *field_description);
int CeedQFunctionContextRegisterFloat(CeedQFunctionContext ctx, const char *field_name, size_t field_offset, size_t num_values, const char *field_description);
int CeedQFunctionContextRegisterInt(CeedQFunctionContext ctx, const char *field_name, size_t field_offset, size_t num_values, const char *field_description);
int CeedQFunctionContextRegisterInt64(CeedQFunctionContext ctx, const char *field_name, size_t field_offset, size_t num_values, const char *field_description);
int CeedOperatorGetContextByteRead(CeedOperator op, CeedContextFieldLabel field_label, size_t *num_values, const char **values);
int CeedOperatorRestoreContextByteRead(CeedOperator op, CeedContextFieldLabel field_label, size_t *num_values, const char **values);
int CeedOperatorSetContextByte(CeedOperator op, CeedContextFieldLabel field_label, char *values);
int CeedQFunctionContextGetByteRead(CeedQFunctionContext ctx, CeedContextFieldLabel field_label, size_t *num_values, const char **values);
int CeedQFunctionContextRestoreByteRead(CeedQFunctionContext ctx, CeedContextFieldLabel field_label, const char **values);
int CeedQFunctionContextSetByte(CeedQFunctionContext ctx, CeedContextFieldLabel field_label, char *values);
Summary
Add new enum values to
CeedContextFieldTypefor single-precision floating point, 64-bit integer, byte, andCeedIntandCeedScalartypes.Possible Implementation
CeedContextFieldTypeinterface to include:Add strings/update indices in
CeedContextFieldTypes.Add associated public registration functions:
Get[TYPE]Read/Restore[TYPE]Read/Set[TYPE]functions (byte used as an example):Update
CeedQFunctionContextRegisterGeneric,CeedQFunctionContextGetGenericRead.Regenerate Julia bindings.
Add new values to
tests/t407-qfunction.