SellyCloudSDK_demo/Example/SellyCloudSDK/Live/Beauty/FURenderKit.framework/Headers/FUItem.h

72 lines
2.2 KiB
Objective-C
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// FUItem.h
// FUAvatarSDK
//
// Created by ly-Mac on 2020/11/16.
//
#import <Foundation/Foundation.h>
#import "FUParam.h"
#import "FURenderableObject.h"
NS_ASSUME_NONNULL_BEGIN
@interface FUItem : FURenderableObject
@property (nonatomic, copy) NSString *name; // 道具名称
@property (nonatomic, copy) NSString *path; // 道具绝对路径
@property (nonatomic, copy, readonly) NSString *fileId;
@property (nonatomic, assign) BOOL supportARMode; // 是否支持 AR 模式
@property (nonatomic, copy) NSSet<NSNumber *> *bodyInvisibleList; // 身体隐藏区域
/// 根据道具路径创建道具对象,可支持自动加载
/// @param path 道具路径
/// @param name 道具名称
/// @param fileId itemList 中的 path
- (instancetype)initWithPath:(NSString *)path name:(nullable NSString *)name fileId:(nullable NSString *)fileId;
/// 根据道具路径创建道具对象,可支持自动加载
/// @param path 道具路径
/// @param name 道具名称
- (instancetype)initWithPath:(NSString *)path name:(nullable NSString *)name;
+ (instancetype)itemWithPath:(NSString *)path name:(nullable NSString *)name fileId:(nullable NSString *)fileId;
+ (instancetype)itemWithPath:(NSString *)path name:(nullable NSString *)name;
- (int)setParam:(FUParam *)param;
- (int)setParam:(id)param forName:(NSString *)name paramType:(FUParamType)paramType;
- (id)getParamForName:(NSString *)name paramType:(FUParamType)paramType;
//把缓存的属性值全部设置一边
- (BOOL)setAllProperty;
////replaceObj 被替换的对象
//- (BOOL)replaceOldObj:(FUItem *)replaceObj;
////replaceOldBeauty 过滤不替换的属性名称
//@property (nonatomic, copy) NSArray *(^FiltersBlock)(void);
//
///**
// * 遇到结构体属性上抛给特定的FUItem处理如 FUMakeupFUHairItem*
// * typeName属性类型name 属性名称
// */
//@property (nonatomic, copy) void (^StructBlock)(NSString *typeName, NSString *name);
//
///**
// * 遇到资源类的item上抛给特定的FUItem处理如FUMakeup
// * oldItem 属性类的item如果是资源类上层处理。否则就递归处理非资源类FUItem
// * name 属性名称
// */
//@property (nonatomic, copy) void (^ResourceBlock)(FUItem *oldItem, NSString *name);
@end
NS_ASSUME_NONNULL_END