Types.hIntroductionUse the links in the table of contents to the left to access the documentation. Typedefs
CBEContainerIdUnique Id of a cbe::Container typedef uint64_t CBEContainerId; CBEDatetime-stamp in the unix epoch format. typedef uint64_t CBEDate; DiscussionA.k.a. POSIX time or time-stamp. \n The equivalent in Linux shell can be found typedef e.g., \code {.sh} date +%s --utc --date='now' date +%s --utc --date='today 17:30:00' \endcode To convert a time-stamp to human readable format use e.g., \code {.sh} date --utc --date=@1678902345 \endcode CBEDriveIdThe id of a drive. typedef uint64_t CBEDriveId; CBEErrorCodeDefault constructor marker. * * To default construct objects from most of the %CloudBackend classes, this * marker type is required. * \par Example use * \code {.cpp} ~~~ // Conceptually, a default construction of an instance of cbe::Container cbe::Container myContainer{ cbe::DefaultCtor{} }; // Ditto cbe::Object myObject{ cbe::DefaultCtor{} }; ~~~ * \endcode * typedef uint64_t CBEErrorCode; FieldsCBEFilterOrdertypedef enum cbefilterorder:uint32_t{ CBEFilterOrderTitle = 1, CBEFilterOrderRelevance = 2, //Note* group Searches does not use Relevance as order. CBEFilterOrderPublished = 3, CBEFilterOrderUpdated = 4, CBEFilterOrderLength = 5, CBEFilterOrderS1 = 6, CBEFilterOrderS2 = 7, CBEFilterOrderS3 = 8, CBEFilterOrderS4 = 9 }CBEFilterOrder; DiscussionSet the filter order in which the search or query will be sorted after. CBEGroupIdUniquely identifies the Group. typedef uint64_t CBEGroupId; CBEItemIdId of a cbe::Container or cbe::Object typedef uint64_t CBEItemId; CBEItemTypetypedef enum cbeitemtype : cbeitem_t{ CBEItemTypeUnapplicable = 1, CBEItemTypeUnknown = 2, CBEItemTypeObject = 4, CBEItemTypeContainer = 8, CBEItemTypeTag = 16, CBEItemTypeGroup = 32 } CBEItemType; DiscussionItemType can be used to sort out cbe objects if the user would like to create a container to put all different kinds of cbe objects in. CBEMemberIdRepresents the cbe::Group membership. typedef uint64_t CBEMemberId; CBEObjectIdUnique Id of a cbe::Object typedef uint64_t CBEObjectId; CBEObjectTypetypedef enum cbeObjectType : cbeobject_t { Other = 1, GroupInvites = 2, ShareInvite = 3 }CBEObjectType; DiscussionApplicationType is not used in this version of groups but will be added later. CBEPublishAccesstypedef enum cbePublishAccess : cbepublish_access_t { CBEPublishAccessRead = 1, CBEPublishAccessUpdate = 2, CBEPublishAccessCreate = 3 }CBEPublishAccess; DiscussionAccess permission for publish CBEPublishIdId of a subscribed cbe::Container or cbe::Object. typedef uint64_t CBEPublishId; CBEPublishVisibilitytypedef enum cbePublishVisibility : cbepublish_visibility_t { CBEPublishVisibilityPublic = 1, CBEPublishVisibilityFriends = 2, CBEPublishVisibilityPrivate = 3, CBEPublishVisibilityInvited = 4 }CBEPublishVisibility; DiscussionVisibility for publish CBEShareIdUniquely identifies a sharing of a cbe::Container or cbe::Object typedef uint64_t CBEShareId; CBEStreamIdUniquely identifies a cbe::Stream. typedef uint64_t CBEStreamId; CBESubscribeIdId of a cbe::Container or cbe::Object typedef uint64_t CBESubscribeId; CBEUserIdUniquely identifies the CBE user. typedef uint64_t CBEUserId; CBEVisibilitytypedef enum cbe_visibility:cbevisibility{ Public = 1, Private = 2 }CBEVisibility; DiscussionVisibility is used for both groups and members, in this version the member visibility will be Public for all members who join a group. Members will in the future also have the option of visibility friends. NS_ENUMRepresents the access permission that can be set for any cbe::Object or cbe::Container. Forms the the possible different combinations of:
combinations give access for users to use different API calls. typedef NS_ENUM(cbepermission_status_t, CBEPermissions) { CBEPermissionsRead = 1, CBEPermissionsWrite = 2, CBEPermissionsReadWrite = 3, CBEPermissionsDelete = 4, CBEPermissionsReadDelete = 5, CBEPermissionsWriteDelete = 6, CBEPermissionsReadWriteDelete = 7, CBEPermissionsChangeACL = 8, CBEPermissionsReadChangeACL = 9, CBEPermissionsWriteChangeACL = 10, CBEPermissionsReadWriteChangeACL = 11, CBEPermissionsDeleteChangeACL = 12, CBEPermissionsReadDeleteChangeACL = 13, CBEPermissionsWriteDeleteChangeACL = 14, CBEPermissionsAllPermissions = 15, CBEPermissionsNoPermissions = 0 }; DiscussionE.g.: 6 = ReadDelete gives the ability to call Move on a Container or an Object. Structs and UnionsShareDataCollection of struct ShareData; Enumerated Typescbe_visibilitytypedef enum cbe_visibility:cbevisibility{ Public = 1, Private = 2 }CBEVisibility; DiscussionVisibility is used for both groups and members, in this version the member visibility will be Public for all members who join a group. Members will in the future also have the option of visibility friends. cbefilterordertypedef enum cbefilterorder:uint32_t{ CBEFilterOrderTitle = 1, CBEFilterOrderRelevance = 2, //Note* group Searches does not use Relevance as order. CBEFilterOrderPublished = 3, CBEFilterOrderUpdated = 4, CBEFilterOrderLength = 5, CBEFilterOrderS1 = 6, CBEFilterOrderS2 = 7, CBEFilterOrderS3 = 8, CBEFilterOrderS4 = 9 }CBEFilterOrder; DiscussionSet the filter order in which the search or query will be sorted after. cbeitemtypetypedef enum cbeitemtype : cbeitem_t{ CBEItemTypeUnapplicable = 1, CBEItemTypeUnknown = 2, CBEItemTypeObject = 4, CBEItemTypeContainer = 8, CBEItemTypeTag = 16, CBEItemTypeGroup = 32 } CBEItemType; DiscussionItemType can be used to sort out cbe objects if the user would like to create a container to put all different kinds of cbe objects in. cbeObjectTypetypedef enum cbeObjectType : cbeobject_t { Other = 1, GroupInvites = 2, ShareInvite = 3 }CBEObjectType; DiscussionApplicationType is not used in this version of groups but will be added later. cbePublishAccesstypedef enum cbePublishAccess : cbepublish_access_t { CBEPublishAccessRead = 1, CBEPublishAccessUpdate = 2, CBEPublishAccessCreate = 3 }CBEPublishAccess; DiscussionAccess permission for publish cbePublishVisibilitytypedef enum cbePublishVisibility : cbepublish_visibility_t { CBEPublishVisibilityPublic = 1, CBEPublishVisibilityFriends = 2, CBEPublishVisibilityPrivate = 3, CBEPublishVisibilityInvited = 4 }CBEPublishVisibility; DiscussionVisibility for publish |