Merge pull request #3911 from priankakariatyml:ios-base-options
PiperOrigin-RevId: 495119958
This commit is contained in:
		
						commit
						ea0bd77dbf
					
				
							
								
								
									
										23
									
								
								mediapipe/tasks/ios/core/BUILD
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								mediapipe/tasks/ios/core/BUILD
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					# Copyright 2022 The MediaPipe Authors. All Rights Reserved.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package(default_visibility = ["//mediapipe/tasks:internal"])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					licenses(["notice"])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					objc_library(
 | 
				
			||||||
 | 
					    name = "MPPBaseOptions",
 | 
				
			||||||
 | 
					    srcs = ["sources/MPPBaseOptions.m"],
 | 
				
			||||||
 | 
					    hdrs = ["sources/MPPBaseOptions.h"],
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
							
								
								
									
										48
									
								
								mediapipe/tasks/ios/core/sources/MPPBaseOptions.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								mediapipe/tasks/ios/core/sources/MPPBaseOptions.h
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,48 @@
 | 
				
			||||||
 | 
					// Copyright 2022 The MediaPipe Authors. All Rights Reserved.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					// you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					// You may obtain a copy of the License at
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					//      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					// distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					// See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					// limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#import <Foundation/Foundation.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NS_ASSUME_NONNULL_BEGIN
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * MediaPipe Tasks delegate.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					typedef NS_ENUM(NSUInteger, MPPDelegate) {
 | 
				
			||||||
 | 
					  /** CPU. */
 | 
				
			||||||
 | 
					  MPPDelegateCPU,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /** GPU. */
 | 
				
			||||||
 | 
					  MPPDelegateGPU
 | 
				
			||||||
 | 
					} NS_SWIFT_NAME(Delegate);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Holds the base options that is used for creation of any type of task. It has fields with
 | 
				
			||||||
 | 
					 * important information acceleration configuration, TFLite model source etc.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					NS_SWIFT_NAME(BaseOptions)
 | 
				
			||||||
 | 
					@interface MPPBaseOptions : NSObject <NSCopying>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** The path to the model asset to open and mmap in memory. */
 | 
				
			||||||
 | 
					@property(nonatomic, copy) NSString *modelAssetPath;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Device delegate to run the MediaPipe pipeline. If the delegate is not set, the default
 | 
				
			||||||
 | 
					 * delegate CPU is used.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					@property(nonatomic) MPPDelegate delegate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					NS_ASSUME_NONNULL_END
 | 
				
			||||||
							
								
								
									
										36
									
								
								mediapipe/tasks/ios/core/sources/MPPBaseOptions.m
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								mediapipe/tasks/ios/core/sources/MPPBaseOptions.m
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,36 @@
 | 
				
			||||||
 | 
					// Copyright 2022 The MediaPipe Authors. All Rights Reserved.
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					// you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					// You may obtain a copy of the License at
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					//      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					// distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					// See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					// limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#import "mediapipe/tasks/ios/core/sources/MPPBaseOptions.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@implementation MPPBaseOptions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- (instancetype)init {
 | 
				
			||||||
 | 
					  self = [super init];
 | 
				
			||||||
 | 
					  if (self) {
 | 
				
			||||||
 | 
					    self.modelAssetPath = [[NSString alloc] init];
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  return self;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- (id)copyWithZone:(NSZone *)zone {
 | 
				
			||||||
 | 
					  MPPBaseOptions *baseOptions = [[MPPBaseOptions alloc] init];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  baseOptions.modelAssetPath = self.modelAssetPath;
 | 
				
			||||||
 | 
					  baseOptions.delegate = self.delegate;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  return baseOptions;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@end
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user