IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 4659


Ignore:
Timestamp:
Jul 28, 2005, 4:30:42 PM (21 years ago)
Author:
jhoblitt
Message:

add doxygen

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Nebulous/nebclient/src/nebclient.h

    r4657 r4659  
    44 * Copyright (C) 2005  Joshua Hoblitt
    55 *
    6  * $Id: nebclient.h,v 1.25 2005-07-29 01:49:30 jhoblitt Exp $
     6 * $Id: nebclient.h,v 1.26 2005-07-29 02:30:42 jhoblitt Exp $
    77 */
    88
     
    1515extern "C" {
    1616#endif
     17
     18/// @addtogroup nebclient
     19/// @{
    1720
    1821typedef enum { NEB_READ, NEB_WRITE } nebRW;
     
    4144} nebObjectInstances;
    4245
    43 nebServer *nebServerAlloc(const char *endpoint);
    44 
    45 void nebServerCleanup(nebServer *server);
    46 
    47 int nebCreate(nebServer *server, const char *key, unsigned int class, const char *volume, const char *comment, char **URI);
    48 
    49 bool nebReplicate(nebServer *server, const char *key, const char *volume, char **URI);
    50 
    51 bool nebCull(nebServer *server, const char *key);
    52 
    53 bool nebLock(nebServer *server, const char *key, nebRW flag);
    54 
    55 bool nebUnlock(nebServer *server, const char *key, nebRW flag);
    56 
    57 nebObjectInstances *nebFindInstances(nebServer *server, const char *key, const char *volume);
    58 
    59 void nebObjectInstancesFree(nebObjectInstances *locations);
    60 
    61 char *nebFind(nebServer *server, const char *key);
    62 
    63 int nebOpen(nebServer *server, const char *key, nebRW flag);
    64 
    65 bool nebDelete(nebServer *server, const char *key);
    66 
    67 bool nebCopy(nebServer *server, const char *key, const char *newKey);
    68 
    69 bool nebMove(nebServer *server, const char *key, const char *newKey);
    70 
    71 bool nebDeleteInstance(nebServer *server, const char *URI);
    72 
    73 nebObjectStat *nebStat(nebServer *server, const char *key);
    74 
    75 char *nebErr(nebServer *server);
    76 
     46/** Allocates a nebServer object
     47 *
     48 * Structure used for communicating with a Nebulous server.  If endpoint is
     49 * NULL then the default value of "http://localhost:80/nebulous" is used.
     50 *
     51 * @return A nebServer object or NULL on failure.
     52 */
     53
     54nebServer *nebServerAlloc(
     55    const char *endpoint                ///< URL of server
     56);
     57
     58/** Deallocates a nebServer object
     59 */
     60
     61void nebServerCleanup(
     62    nebServer *server                   ///< nebServer object
     63);
     64
     65/** Creates and opens new storage object
     66 *
     67 * @return A filehandle on success or a negative value on failure.
     68 */
     69
     70int nebCreate(
     71    nebServer *server,                  ///< nebServer object
     72    const char *key,                    ///< storage object ID
     73    unsigned int class,                 ///< storage object storage class
     74    const char *volume,                 ///< preferred storage location of initial instance
     75    const char *comment,                ///< storage object comment
     76    char **URI                          ///< URL of initial instance, can be NULL
     77);
     78
     79/** Adds an instance to a storage object
     80 *
     81 * @return true on success
     82 */
     83
     84bool nebReplicate(
     85    nebServer *server,                  ///< nebServer object
     86    const char *key,                    ///< storage object ID
     87    const char *volume,                 ///< preferred storage location of new instance
     88    char **URI                          ///< URL of new instance, can be NULL
     89);
     90
     91/** Removes an instance from a storage object
     92 *
     93 * This function can not remove the last instance of a storage object.
     94 *
     95 * @return true on success
     96 */
     97
     98bool nebCull(
     99    nebServer *server,                  ///< nebServer object
     100    const char *key                     ///< storage object ID
     101);
     102
     103/** Trys to acquire a lock on a storage object
     104 *
     105 * This function times out after a default interval of 10s (compile time
     106 * configurable).
     107 *
     108 * @return true on success
     109 */
     110bool nebLock(
     111    nebServer *server,                  ///< nebServer object
     112    const char *key,                    ///< storage object ID
     113    nebRW flag                          ///< read only or write lock
     114);
     115
     116/** Trys to release a lock on a storage object
     117 *
     118 * @return true on success
     119 */
     120bool nebUnlock(
     121    nebServer *server,                  ///< nebServer object
     122    const char *key,                    ///< storage object ID
     123    nebRW flag                          ///< read only or write lock
     124);
     125
     126/** Lists all instances of a storage object
     127 *
     128 * @return A nebObjectInstances object or NULL on failure.
     129 */
     130
     131nebObjectInstances *nebFindInstances(
     132    nebServer *server,                  ///< nebServer object
     133    const char *key,                    ///< storage object ID
     134    const char *volume                  ///< restrict search to this storage volume (non-working)
     135);
     136
     137/** Deallocates a nebObjectInstances object
     138 */
     139
     140void nebObjectInstancesFree(
     141    nebObjectInstances *locations       ///< nebObjectInstances object to free
     142);
     143
     144/** Find any instance of a storage object
     145 *
     146 * @return A string of the files storage path (not a URL) or NULL on failure.
     147 */
     148
     149char *nebFind(
     150    nebServer *server,                  ///< nebServer object
     151    const char *key                     ///< storage object ID
     152);
     153
     154/** Open a storage object for read or write
     155 *
     156 * @return A filehandle on success or a negative value on failure.
     157 */
     158
     159int nebOpen(
     160    nebServer *server,                  ///< nebServer object
     161    const char *key,                    ///< storage object ID
     162    nebRW flag                          ///< read only or write lock
     163);
     164
     165/** Delete a storage object and all of it's instances
     166 *
     167 * @return true on success
     168 */
     169
     170bool nebDelete(
     171    nebServer *server,                  ///< nebServer object
     172    const char *key                     ///< storage object ID
     173);
     174
     175/** Copy a storage object
     176 *
     177 * The new storage object will be created with only one instance.
     178 *
     179 * @return true on success
     180 */
     181
     182bool nebCopy(
     183    nebServer *server,                  ///< nebServer object
     184    const char *key,                    ///< storage object ID
     185    const char *newKey                  ///< new storage object ID
     186);
     187
     188/** Rename a storage object
     189 *
     190 * Currently this operation will remove all but one instance of the storage
     191 * object and may change it's storage location.
     192 */
     193bool nebMove(
     194    nebServer *server,                  ///< nebServer object
     195    const char *key,                    ///< storage object ID
     196    const char *newKey                  ///< new storage object ID
     197);
     198
     199/** Remove a storage object instance
     200 *
     201 * Removing the last instance of a storage object with destroy the storage
     202 * object as well.
     203 *
     204 * @return true on success
     205 */
     206
     207bool nebDeleteInstance(
     208    nebServer *server,                  ///< nebServer object
     209    const char *URI                     ///< URL of instance to remove
     210);
     211
     212/** View the properties of a storage object
     213 *
     214 * @return A nebObjectStat object or NULL on failure.
     215 */
     216
     217nebObjectStat *nebStat(
     218    nebServer *server,                  ///< nebServer object
     219    const char *key                     /// storage object ID
     220);
     221
     222/** Returns the error message from the last nebclient function that failed.
     223 *
     224 * This function may not be called unless an error has occurred.  The string
     225 * return by this function does not need to be freed but the value will change
     226 * at the next nebclient function failure.
     227 *
     228 * @return A string
     229 */
     230
     231char *nebErr(
     232    nebServer *server                   ///< nebServer object
     233);
     234
     235/** Free nebclient allocated memory
     236 */
    77237void nebFree(void *ptr);
     238
     239/// @}
    78240
    79241#ifdef __cplusplus
Note: See TracChangeset for help on using the changeset viewer.