meta.h 1.8 KB
Newer Older
H
refact  
Hongze Cheng 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
/*
 * Copyright (c) 2019 TAOS Data, Inc. <jhtao@taosdata.com>
 *
 * This program is free software: you can use, redistribute, and/or modify
 * it under the terms of the GNU Affero General Public License, version 3
 * or later ("AGPL"), as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */

H
refact  
Hongze Cheng 已提交
16 17
#ifndef _TD_META_H_
#define _TD_META_H_
H
refact  
Hongze Cheng 已提交
18

D
dapan1121 已提交
19
#include "taosmsg.h"
H
refact  
Hongze Cheng 已提交
20

H
more  
Hongze Cheng 已提交
21 22
#include "os.h"

H
refact  
Hongze Cheng 已提交
23 24 25 26
#ifdef __cplusplus
extern "C" {
#endif

H
more  
Hongze Cheng 已提交
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
typedef uint64_t tuid_t;

// Types exported
typedef struct SMeta             SMeta;
typedef struct SMetaOptions      SMetaOptions;
typedef struct SMetaQueryHandle  SMetaQueryHandle;
typedef struct SMetaQueryOptions SMetaQueryOptions;

// SMeta operations
int    metaCreate(const char *path);
int    metaDestroy(const char *path);
SMeta *metaOpen(SMetaOptions *);
void   metaClose(SMeta *);
int    metaCreateTable(SMeta *, void *);
int    metaDropTable(SMeta *, uint64_t tuid_t);
int    metaAlterTable(SMeta *, void *);
int    metaCommit(SMeta *);

// Options
SMetaOptions *metaOptionsCreate();
void          metaOptionsDestroy(SMetaOptions *);
void          metaOptionsSetCache(SMetaOptions *, size_t capacity);

// SMetaQueryHandle
SMetaQueryHandle *metaQueryHandleCreate(SMetaQueryOptions *);
void              metaQueryHandleDestroy(SMetaQueryHandle *);
H
refact  
Hongze Cheng 已提交
53

H
more  
Hongze Cheng 已提交
54 55 56
// SMetaQueryOptions
SMetaQueryOptions *metaQueryOptionsCreate();
void               metaQueryOptionsDestroy(SMetaQueryOptions *);
H
refact  
Hongze Cheng 已提交
57

H
refact  
Hongze Cheng 已提交
58 59 60 61
#ifdef __cplusplus
}
#endif

D
dapan1121 已提交
62
#endif /*_TD_META_H_*/