Main Page Modules Data Structures File List Data Fields Globals
lors_api.h File Reference#include <assert.h>
#include <pthread.h>
#include <semaphore.h>
#include <sys/types.h>
#include <jval.h>
#include <jrb.h>
#include <dllist.h>
#include <ibp.h>
#include <lors_error.h>
#include <lors_opts.h>
#include <lors_sem.h>
#include <exnode.h>
#include <lbone_base.h>
#include <lors_util.h>
Go to the source code of this file.
|
Data Structures |
| struct | __is_block |
| struct | __LorsBoundary |
| struct | __LorsExnode |
| struct | __lorsConditionStruct |
| struct | __LorsSet |
| struct | __LorsDepotPool |
| struct | __lbone_resolution |
| struct | __lbone_resoution_index |
| struct | __depot_t |
| struct | __LorsMapping |
Defines |
| #define | MIN(x, y) (x < y ? x : y ) |
| #define | IBP_HARD IBP_STABLE |
| #define | IBP_SOFT IBP_VOLATILE |
Typedefs |
| typedef int64_t | longlong |
| typedef __is_block | ISBlock |
| typedef __LorsBoundary | LorsBoundary |
| typedef __LorsExnode | LorsExnode |
| typedef __lorsConditionStruct | LorsConditionStruct |
| typedef __LorsSet | LorsSet |
| typedef __LorsDepotPool | LorsDepotPool |
| typedef __lbone_resolution | LboneResolution |
| typedef __lbone_resoution_index | LboneResolutionIndex |
| typedef Dllist | LorsEnum |
| typedef __depot_t | LorsDepot |
| typedef __lorsrsset | LorsRSSet |
| typedef __LorsMapping | LorsMapping |
Functions |
| void | lorsPrintSet (LorsSet *set) |
| int | lorsCreateResolutionFromFile (char *filename, LboneResolution **lr, int metric_index) |
| int | lorsCreateResolutionFromLBone (IBP_depot lboneserver, LboneResolution **lr, int opt) |
| int | lorsSetResolutionPoint (LboneResolution *lr, IBP_depot src, IBP_depot dst, double metric) |
| int | lorsGetResolutionPoint (LboneResolution *lr, IBP_depot src, IBP_depot dst, double *metric) |
| int | lorsSaveResolutionToFile (char *filename, LboneResolution *lr) |
| int | lorsUpdateDepotPoolFromResolution (LorsDepotPool *dp_src, LorsDepotPool *dp_dst, LboneResolution *lr, int opts) |
| int | lorsFreeResolution (LboneResolution *lr) |
| void | lorsGetLibraryVersion (const char **package, const double *version) |
| int | lorsSetEnum (LorsSet *set, LorsEnum *list) |
| | Form an enumeration of all mappings within the Set.
|
| int | lorsExnodeEnum (LorsExnode *exnode, LorsEnum *list) |
| | Form an enumeration of all mappings within the Exnode.
|
| int | lorsEnumNext (LorsEnum list, LorsEnum *iterator, LorsMapping **ret) |
| | Iterate through a LorsEnum list of mappings.
|
| int | lorsEnumFree (LorsEnum list) |
| | Free a LorsEnum.
|
| int | lorsGetDepotPool (LorsDepotPool **dp, char *lbone_server, int lbone_server_port, IBP_depot *depots, int min_unique_depots, char *location, ulong_t storage_size, int storage_type, time_t duration, int nthreads, int timeout, int opts) |
| | Create a collection of IBP depots from the LBone or a user supplied list.
|
| int | lorsUpdateDepotPool (LorsExnode *exnode, LorsDepotPool **ret_dpp, char *lbone_server, int lbone_server_port, char *location, int nthreads, int timeout, int opts) |
| int | lorsFreeDepotPool (LorsDepotPool *dpp) |
| int | lorsExnodeCreate (LorsExnode **exnode) |
| | Allocate a container structure for LorsSets.
|
| int | lorsExnodeFree (LorsExnode *exnode) |
| int | lorsAppendSet (LorsExnode *exnode, LorsSet *set) |
| | Append a Set to an Exnode.
|
| int | lorsAppendMapping (LorsExnode *exnode, LorsMapping *map) |
| | Add mapping to exnode.
|
| int | lorsDetachMapping (LorsExnode *exnode, LorsMapping *map) |
| | Remove mapping from exnode.
|
| int | lorsDeserialize (LorsExnode **exnode, char *buffer, int length, char *schema) |
| | Reconstruct the Exnode datastructure from an XML serialization.
|
| int | lorsFileDeserialize (LorsExnode **exnode, char *filename, char *schema) |
| | Deserialize from File rather than from buffer.
|
| int | lorsSerialize (LorsExnode *exnode, char **buffer, int readonly, int *length) |
| | Translate Exnode structure to XML string.
|
| int | lorsFileSerialize (LorsExnode *exnode, char *filename, int readonly, int opts) |
| | Serialize Exnode and store to file.
|
| int | lorsGetExnodeMetadata (LorsExnode *exnode, ExnodeMetadata **md) |
| | Fetch the ExnodeMetadata from a LorsExnode or LorsSet.
|
| int | lorsGetMappingMetadata (LorsMapping *map, ExnodeMetadata **md) |
| | Fetch the ExnodeMetadata from a LorsExnode or LorsSet.
|
| int | lorsMetadataMerge (ExnodeMetadata *src, ExnodeMetadata *dest) |
| int | lorsQuery (LorsExnode *exnode, LorsSet **set, longlong offset, longlong length, int opt) |
| int | lorsSetAddMapping (LorsSet *set, LorsMapping *map) |
| int | lorsSetRemoveMapping (LorsSet *set, LorsMapping *map) |
| int | lorsSetInit (LorsSet **set, ulong_t data_blocksize, int copies, int opts) |
| | Initialize LorsSet internal data structures.
|
| int | lorsSetStore (LorsSet *set, LorsDepotPool *dp, char *buffer, longlong offset, longlong length, LorsConditionStruct *lc, int nthreads, int timeout, int opts) |
| | Allocate storage and Send data to the IBP allocations.
|
| int | lorsSetUpdate (LorsSet *set, LorsDepotPool *dp, char *buffer, longlong offset, longlong length, int nthreads, int timeout, int opts) |
| long | lorsSetLoad (LorsSet *set, char *buffer, longlong offset, long length, ulong_t block_size, LorsConditionStruct *lc, int nthreads, int timeout, int opts) |
| | Retrieve data from IBP allocations.
|
| longlong | lorsSetRealTimeLoad (LorsSet *set, char *buffer, int fd, longlong offset, longlong length, ulong_t block_size, int pre_buf, int cache, LorsConditionStruct *lc, int nthreads, int timeout, int max_thds_per_depot, int thds_per_job, int progress_n, int opts) |
| | Provide real-time streaming of data over a file descriptor.
|
| int | lorsSetCopy (LorsSet *srcSet, LorsSet *dstSet, LorsDepotPool *dp, LboneResolution *lr, longlong offset, longlong length, int nthreads, int timeout, int opts) |
| | Create replicas of data in srcSet allocation to another.
|
| int | lorsSetMerge (LorsSet *src, LorsSet *dest) |
| | Combine the mappings from two Sets into one Set.
|
| int | lorsSetTrim (LorsSet *set, longlong offset, longlong length, int nthreads, int timeout, int opts) |
| | Remove particular extents or Mappings from Set.
|
| int | lorsSetRefresh (LorsSet *set, longlong offset, longlong length, time_t duration, int nthreads, int timeout, int opts) |
| | Refresh the expiration time on allocated storage.
|
| int | lorsSetStat (LorsSet *set, int nthreads, int timeout, int opts) |
| | Perform a status operation on the Mappings of a Set.
|
| int | lorsSetFree (LorsSet *set, int opts) |
| | Perform 'free' on internal data structures.
|
| int | lorsSetTrimCaps (LorsSet *set, int opts) |
| | Trim IBP caps from a set of mappings.
|
Define Documentation
| #define MIN |
( |
x, |
|
|
y |
|
) |
(x < y ? x : y )
|
|
| #define IBP_HARD IBP_STABLE
|
|
| #define IBP_SOFT IBP_VOLATILE
|
|
Typedef Documentation
| typedef struct __lorsrsset LorsRSSet
|
|
Function Documentation
| void lorsPrintSet |
( |
LorsSet * |
set |
) |
|
|
| int lorsGetExnodeMetadata |
( |
LorsExnode * |
exnode, |
|
|
ExnodeMetadata ** |
md |
|
) |
|
|
|
|
Fetch the ExnodeMetadata from a LorsExnode or LorsSet.
The lorsExnodeCreate() or lorsSetCreate() will allocate a ExnodeMetadata. Therefore, there is no lorsSetMetadataCreate() call. To access the metadata for either a set or exnode use these calls. Because you are given a pointer to the same pointer that the exnode or set maintain, there are no functions to set the metadata for an exnode or set. - Parameters:
-
| exnode |
An exnode pointer. |
| md |
A pointer to a ExnodeMetadata variable, to be used with future calls for Metadata manipulation. |
|
| int lorsGetMappingMetadata |
( |
LorsMapping * |
map, |
|
|
ExnodeMetadata ** |
md |
|
) |
|
|
|
|
Fetch the ExnodeMetadata from a LorsExnode or LorsSet.
The lorsExnodeCreate() or lorsSetCreate() will allocate a ExnodeMetadata. Therefore, there is no lorsMetadataCreate() call. To access the metadata for either a set or exnode use these calls. Because you are given a pointer to the same pointer that the exnode or set maintain, there are no functions to set the metadata for an exnode or set. - Note:
-
- Parameters:
-
| map |
A LorsMapping pointer. |
| md |
A pointer to a ExnodeMetadata variable, to be used with future calls for Metadata manipulation. |
|
| int lorsMetadataMerge |
( |
ExnodeMetadata * |
src, |
|
|
ExnodeMetadata * |
dest |
|
) |
|
|
|